@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:wght@400;500;600;700;800&display=swap');

/*
 * Brar Immigration — Australian Horizon theme
 * Cleaned CSS: duplicate selector declarations removed and EB Garamond applied globally.
 */

.horizon-theme,
.horizon-theme *,
.horizon-theme *::before {
    font-family: "EB Garamond", Georgia, serif !important;
	font-size:20px;
}
.horizon-theme *::after {
    font-family: "EB Garamond", Georgia, serif !important;
	font-size:23px;
}

.horizon-theme {
    --horizon-ink: #101d38;
    --horizon-navy: #15265b;
    --horizon-blue: #245fd6;
    --horizon-violet: #7147d8;
    --horizon-coral: #ff7b62;
    --horizon-gold: #ecb85b;
    --horizon-sky: #eaf4ff;
    --horizon-lilac: #f1ecff;
    --horizon-ivory: #fffaf1;
    --horizon-white: #ffffff;
    --horizon-muted: #5d6981;
    --horizon-line: rgba(36, 95, 214, .14);
    --horizon-shadow: 0 24px 70px rgba(46, 58, 120, .14);
    color: var(--horizon-ink);
    background: radial-gradient(circle at 5% 4%, rgba(95, 188, 255, .16), transparent 28rem), radial-gradient(circle at 96% 18%, rgba(132, 86, 222, .12), transparent 32rem), var(--horizon-ivory);
    font-family: "EB Garamond", Georgia, serif;
}

.horizon-theme h1,
.horizon-theme h2,
.horizon-theme h3,
.horizon-theme h4 {
    color: var(--horizon-ink);
    font-family: "EB Garamond", Georgia, serif;
    font-weight: 600;
    letter-spacing: -.025em;
}

.horizon-theme p {
    color: var(--horizon-muted);
}

.horizon-theme a,
.horizon-theme .btn,
.horizon-theme .reference-tile,
.horizon-theme .service-card,
.horizon-theme .testimonial-card,
.horizon-theme .google-review-card,
.horizon-theme .process-card,
.horizon-theme .feature-item,
.horizon-theme .lux-card {
    transition: transform .25s ease, box-shadow .25s ease, color .25s ease, background .25s ease, border-color .25s ease;
}

.horizon-theme .top-strip {
    background: radial-gradient(circle at 15% 50%, rgba(255, 255, 255, .16), transparent 20rem), linear-gradient(105deg, #17265d 0%, #4f3d9d 55%, #8a4f9d 100%);
    border-bottom: 1px solid rgba(255, 255, 255, .14);
    color: rgba(255, 255, 255, .92);
}

.horizon-theme .top-strip a:hover {
    color: #ffe7ad;
}

.horizon-theme .luxury-navbar {
    padding: .8rem 0 1rem;
    border: 0;
    background: rgba(246, 249, 255, .78);
    box-shadow: none;
    backdrop-filter: blur(22px);
}

.horizon-theme .luxury-navbar .container {
    min-height: 84px;
    padding: .55rem .75rem .55rem 1rem;
    border: 1px solid rgba(255, 255, 255, .8);
    border-radius: 28px;
    background: rgba(255, 255, 255, .78);
    box-shadow: 0 18px 50px rgba(39, 53, 115, .12), inset 0 1px 0 rgba(255, 255, 255, .9);
}

.horizon-theme .site-header.is-scrolled .luxury-navbar {
    background: rgba(240, 246, 255, .9);
}

.horizon-theme .site-header.is-scrolled .luxury-navbar .container {
    min-height: 72px;
}

.horizon-theme .navbar-nav .nav-link {
    position: relative;
    z-index: 1;
    margin: 0 .08rem;
}

.horizon-theme .navbar-nav .nav-link::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    background: linear-gradient(135deg, rgba(36, 95, 214, .12), rgba(113, 71, 216, .13));
    opacity: 0;
    transform: scale(.88);
    transition: opacity .2s ease, transform .2s ease;
}

.horizon-theme .navbar-nav .nav-link:hover::before,
.horizon-theme .navbar-nav .nav-link.active::before,
.horizon-theme .navbar-nav .show > .nav-link::before {
    opacity: 1;
    transform: scale(1);
}

.horizon-theme .luxury-dropdown {
    padding: .65rem;
    border: 1px solid rgba(255, 255, 255, .6);
    border-radius: 20px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 24px 60px rgba(32, 45, 95, .18);
    backdrop-filter: blur(22px);
}

.horizon-theme .luxury-dropdown .dropdown-item {
    border-radius: 12px;
    color: #2c3958;
}

.horizon-theme .luxury-dropdown .dropdown-item:hover,
.horizon-theme .luxury-dropdown .dropdown-item:focus {
    color: var(--horizon-white);
    background: linear-gradient(135deg, var(--horizon-blue), var(--horizon-violet));
}

.horizon-theme .navbar-toggler {
    padding: .72rem;
    border: 0;
    border-radius: 16px;
    background: linear-gradient(135deg, var(--horizon-coral), var(--horizon-gold));
    box-shadow: 0 12px 28px rgba(255, 123, 98, .28);
}

.horizon-theme .btn {
    padding: 1.05rem 1.55rem;
    border-radius: 14px;
    font-family: "EB Garamond", Georgia, serif;
    font-weight: 800;
    font-size: 1.1rem;
}

.horizon-theme .btn-gold,
.horizon-theme .nav-cta {
    border-color: transparent;
    color: #18264b;
    background: linear-gradient(125deg, #ffd77d 0%, #ffb25f 48%, #ff8569 100%);
    box-shadow: 0 15px 34px rgba(240, 146, 86, .25);
}

.horizon-theme .btn-gold:hover,
.horizon-theme .nav-cta:hover {
    color: #18264b;
    transform: translateY(-3px);
    box-shadow: 0 20px 42px rgba(240, 123, 91, .34);
}

.horizon-theme .btn-navy {
    border-color: transparent;
    color: var(--horizon-white);
    background: linear-gradient(135deg, var(--horizon-blue), var(--horizon-violet));
    box-shadow: 0 15px 34px rgba(61, 77, 178, .22);
}

.horizon-theme .btn-navy:hover {
    color: var(--horizon-white);
    background: linear-gradient(135deg, #174fc4, #6133ca);
    transform: translateY(-3px);
}

.horizon-theme .btn-outline-light {
    border-color: rgba(255, 255, 255, .72);
    color: var(--horizon-white);
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(10px);
}

.horizon-theme .btn-outline-light:hover {
    border-color: var(--horizon-white);
    color: var(--horizon-blue);
    background: var(--horizon-white);
}

.horizon-theme .btn-outline-light.dark {
    border-color: rgba(36, 95, 214, .25);
    color: var(--horizon-blue);
    background: rgba(255, 255, 255, .66);
}

.horizon-theme .hero-section {
    position: relative;
    isolation: isolate;
    min-height: 720px;
    overflow: hidden;
    padding: 5rem 0 6rem;
    background-position: center 58% !important;
}

.horizon-theme .hero-section::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: radial-gradient(circle at 82% 10%, rgba(255, 199, 119, .36), transparent 24rem), radial-gradient(circle at 60% 90%, rgba(89, 172, 255, .35), transparent 28rem), linear-gradient(112deg, rgba(21, 38, 91, .95) 0%, rgba(44, 62, 133, .83) 48%, rgba(112, 62, 153, .64) 100%);
}

.horizon-theme .hero-section::after {
    content: "";
    position: absolute;
    right: -11rem;
    bottom: -18rem;
    z-index: -1;
    width: 48rem;
    height: 48rem;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 46% 54% 63% 37% / 45% 39% 61% 55%;
    background: linear-gradient(145deg, rgba(255, 255, 255, .16), rgba(255, 255, 255, 0));
    transform: rotate(-15deg);
}

.horizon-theme .hero-copy {
    max-width: 760px;
}

.horizon-theme .hero-copy .eyebrow,
.horizon-theme .hero-brand-message .eyebrow {
    padding: .55rem .9rem;
    border: 1px solid rgba(255, 222, 153, .38);
    border-radius: 999px;
    color: #ffe09b;
    background: rgba(255, 255, 255, .08);
    letter-spacing: .13em;
}

.horizon-theme .hero-copy h1 {
    max-width: 800px;
    margin: 1.2rem 0 1.4rem;
    color: #fffdf8;
    font-size: clamp(4rem, 6.6vw, 4rem);
    line-height: .94;
    text-shadow: 0 14px 42px rgba(15, 24, 70, .28);
}

.horizon-theme .hero-copy p {
    max-width: 680px;
    color: rgba(255, 255, 255, .84);
    font-size: 1.12rem;
}

.horizon-theme .hero-brand-panel {
    padding: 1.7rem;
    border: 1px solid rgba(255, 255, 255, .32);
    border-radius: 34px;
    background: radial-gradient(circle at 90% 0%, rgba(255, 196, 108, .25), transparent 17rem), linear-gradient(150deg, rgba(255, 255, 255, .2), rgba(255, 255, 255, .07));
    box-shadow: 0 34px 85px rgba(14, 22, 66, .32);
    backdrop-filter: blur(24px);
}

.horizon-theme .hero-brand-panel::after {
    right: -4rem;
    bottom: -5rem;
    width: 15rem;
    height: 15rem;
    border: 1px solid rgba(255, 220, 155, .25);
    border-radius: 50%;
    transform: none;
}

.horizon-theme .hero-brand-logo {
    padding: 1.2rem;
    border-radius: 24px;
    background: rgba(255, 255, 255, .92);
    filter: drop-shadow(0 16px 30px rgba(20, 30, 80, .2));
}

.horizon-theme .hero-brand-message h2,
.horizon-theme .strategy-moves strong {
    color: var(--horizon-white);
}

.horizon-theme .strategy-moves div {
    border-color: rgba(255, 211, 128, .55);
}

.horizon-theme .strategy-moves span {
    color: #ffd98b;
}

.horizon-theme .reference-service-strip {
    position: relative;
    z-index: 3;
    margin-top: -3rem;
    padding: 0 0 4.5rem;
    background: transparent;
}

.horizon-theme .reference-tile {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .84);
    border-radius: 24px;
    background: linear-gradient(rgba(255, 255, 255, .92), rgba(255, 252, 246, .94)) padding-box, linear-gradient(135deg, rgba(51, 119, 222, .35), rgba(129, 71, 214, .2), rgba(255, 145, 101, .3)) border-box;
    box-shadow: 0 20px 55px rgba(46, 58, 120, .1);
}

.horizon-theme .service-card {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .84);
    background: linear-gradient(rgba(255, 255, 255, .92), rgba(255, 252, 246, .94)) padding-box, linear-gradient(135deg, rgba(51, 119, 222, .35), rgba(129, 71, 214, .2), rgba(255, 145, 101, .3)) border-box;
    box-shadow: 0 20px 55px rgba(46, 58, 120, .1);
}

.horizon-theme .testimonial-card,
.horizon-theme .google-review-card,
.horizon-theme .lux-card,
.horizon-theme .process-card,
.horizon-theme .content-panel,
.horizon-theme .contact-card,
.horizon-theme .legal-step-card {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .84);
    border-radius: 24px;
    background: linear-gradient(rgba(255, 255, 255, .92), rgba(255, 252, 246, .94)) padding-box, linear-gradient(135deg, rgba(51, 119, 222, .35), rgba(129, 71, 214, .2), rgba(255, 145, 101, .3)) border-box;
    box-shadow: 0 20px 55px rgba(46, 58, 120, .1);
}

.horizon-theme .reference-tile:hover,
.horizon-theme .service-card:hover,
.horizon-theme .testimonial-card:hover,
.horizon-theme .google-review-card:hover,
.horizon-theme .lux-card:hover,
.horizon-theme .process-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 30px 68px rgba(49, 59, 132, .17);
}

.horizon-theme .reference-tile img,
.horizon-theme .service-card-image,
.horizon-theme .service-card-image img {
    border-radius: 22px 22px 0 0;
}

.horizon-theme .reference-tile div,
.horizon-theme .service-card-body {
    padding: 1.45rem;
}

.horizon-theme .reference-tile h2,
.horizon-theme .service-card h3 {
    font-size: 1.35rem;
}

.horizon-theme .text-link {
    color: var(--horizon-blue);
    font-weight: 800;
    letter-spacing: .08em;
}

.horizon-theme .text-link::after {
    content: " →";
}

.horizon-theme .section-padding {
    position: relative;
    padding-top: 7rem;
    padding-bottom: 7rem;
}

.horizon-theme main > .section-padding:nth-of-type(odd):not(.navy-band):not(.cta-band) {
    background: radial-gradient(circle at 8% 20%, rgba(91, 177, 255, .12), transparent 23rem), linear-gradient(135deg, #f9fcff 0%, #fffaf2 62%, #f7efff 100%);
}

.horizon-theme main > .section-padding:nth-of-type(even):not(.navy-band):not(.cta-band) {
    background: radial-gradient(circle at 92% 14%, rgba(123, 77, 218, .1), transparent 25rem), linear-gradient(145deg, #fffdf9 0%, #f1f8ff 100%);
}

.horizon-theme .surface {
    background: radial-gradient(circle at 8% 8%, rgba(71, 156, 238, .11), transparent 24rem), linear-gradient(145deg, #f7fbff, #fff8f0) !important;
}

.horizon-theme .section-header .eyebrow,
.horizon-theme .homepage-story-copy .eyebrow,
.horizon-theme .director-copy .eyebrow,
.horizon-theme .home-address-copy .eyebrow {
    padding: .45rem .78rem;
    border: 1px solid rgba(36, 95, 214, .15);
    border-radius: 999px;
    color: var(--horizon-blue);
    background: rgba(255, 255, 255, .72);
    letter-spacing: .11em;
}

.horizon-theme .section-header h2 {
    font-size: clamp(2.8rem, 4.6vw, 4rem);
    line-height: 1;
}

.horizon-theme .homepage-story {
    overflow: hidden;
    background: radial-gradient(circle at 0% 100%, rgba(100, 190, 255, .2), transparent 30rem), radial-gradient(circle at 100% 0%, rgba(255, 158, 102, .15), transparent 25rem), var(--horizon-ivory) !important;
}

.horizon-theme .homepage-story-image {
    border-radius: 36px 36px 120px 36px;
    box-shadow: 0 35px 80px rgba(44, 58, 124, .18);
}

.horizon-theme .homepage-story-image > img {
    border-radius: inherit;
}

.horizon-theme .story-image-caption {
    right: -1.25rem;
    bottom: 2rem;
    left: auto;
    max-width: 86%;
    padding: 1.2rem 1.45rem;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 20px 6px 20px 20px;
    background: linear-gradient(135deg, rgba(29, 72, 172, .94), rgba(112, 62, 192, .92));
    box-shadow: 0 20px 44px rgba(42, 53, 126, .28);
    backdrop-filter: blur(12px);
}

.horizon-theme .story-principles {
    gap: .8rem;
}

.horizon-theme .story-principles div {
    border: 1px solid rgba(36, 95, 214, .12);
    border-radius: 18px;
    background: rgba(255, 255, 255, .74);
    box-shadow: 0 12px 28px rgba(48, 64, 131, .07);
}

.horizon-theme .story-principles span {
    color: var(--horizon-violet);
}

.horizon-theme .director-section {
    overflow: hidden;
    background: radial-gradient(circle at 12% 50%, rgba(77, 171, 255, .16), transparent 30rem), radial-gradient(circle at 94% 15%, rgba(255, 170, 100, .13), transparent 25rem), linear-gradient(135deg, #f8fbff, #fff7ed) !important;
}

.horizon-theme .director-visual::before {
    border-radius: 38px 38px 110px 38px;
    background: radial-gradient(circle at 0% 0%, rgba(255, 255, 255, .25), transparent 14rem), linear-gradient(145deg, #244bc0, #7348cf 72%, #9b5bb4);
    box-shadow: 0 36px 80px rgba(52, 58, 143, .24);
}

.horizon-theme .director-visual::after {
    border: 2px solid rgba(255, 129, 99, .5);
    border-radius: 50%;
}

.horizon-theme .director-accent {
    border-radius: 999px;
    background: linear-gradient(135deg, #ffcb70, #ff7c63);
}

.horizon-theme .director-frame {
    border-radius: 28px;
}

.horizon-theme .director-frame::after {
    border: 2px solid rgba(255, 255, 255, .62);
    border-radius: inherit;
}

.horizon-theme .director-credential {
    border: 1px solid rgba(255, 255, 255, .28);
    border-left: 0;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(24, 50, 131, .96), rgba(102, 58, 185, .95));
    box-shadow: 0 20px 44px rgba(37, 47, 124, .3);
    backdrop-filter: blur(12px);
}

.horizon-theme .director-credential span {
    color: #ffd47c;
}

.horizon-theme .director-copy h2 {
    font-size: clamp(2.8rem, 4.2vw, 4rem);
    line-height: 1.02;
}

.horizon-theme .achievement-section {
    background: radial-gradient(circle at 78% 25%, rgba(121, 79, 213, .12), transparent 27rem), linear-gradient(145deg, #eef7ff, #fff8ef) !important;
}

.horizon-theme .achievement-carousel {
    border: 1px solid rgba(255, 255, 255, .84);
    background: rgba(255, 255, 255, .72);
    box-shadow: var(--horizon-shadow);
    backdrop-filter: blur(18px);
}

.horizon-theme .google-reviews-section {
    background: radial-gradient(circle at 15% 15%, rgba(255, 184, 91, .2), transparent 25rem), linear-gradient(120deg, #fff8eb, #f3f6ff 55%, #f6efff) !important;
}

.horizon-theme .google-reviews-shell {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .8);
    border-radius: 36px;
    background: rgba(255, 255, 255, .72);
    box-shadow: var(--horizon-shadow);
    backdrop-filter: blur(18px);
}

.horizon-theme .google-review-summary {
    background: radial-gradient(circle at 100% 0%, rgba(255, 206, 115, .26), transparent 17rem), linear-gradient(145deg, #213f9e, #7241c7);
}

.horizon-theme .google-review-summary h2,
.horizon-theme .google-review-summary p {
    color: var(--horizon-white);
}

.horizon-theme .google-mark {
    color: var(--horizon-white);
    background: linear-gradient(135deg, #ffbd65, #ff7666);
}

.horizon-theme .review-stars,
.horizon-theme .google-rating-row span {
    color: #f4ad3e;
}

.horizon-theme .home-address-section {
    background: radial-gradient(circle at 85% 10%, rgba(116, 70, 216, .12), transparent 26rem), linear-gradient(145deg, #f5f9ff, #fff8ed) !important;
}

.horizon-theme .home-address-panel,
.horizon-theme .map-panel {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .82);
    border-radius: 34px;
    background: rgba(255, 255, 255, .76);
    box-shadow: var(--horizon-shadow);
}

.horizon-theme .home-address-copy,
.horizon-theme .map-copy {
    background: radial-gradient(circle at 0% 0%, rgba(87, 170, 255, .15), transparent 19rem), rgba(255, 255, 255, .72);
}

.horizon-theme .address-detail-list li {
    border-color: rgba(36, 95, 214, .1);
}

.horizon-theme .service-specialisations-section,
.horizon-theme .services-portfolio-section {
    background: radial-gradient(circle at 10% 10%, rgba(92, 177, 255, .14), transparent 26rem), radial-gradient(circle at 90% 85%, rgba(122, 77, 216, .11), transparent 28rem), #f8fbff !important;
}

.horizon-theme .service-card-image::after {
    background: linear-gradient(to top, rgba(24, 40, 91, .28), transparent 65%);
}

.horizon-theme .navy-band {
    overflow: hidden;
    background: radial-gradient(circle at 8% 20%, rgba(95, 186, 255, .32), transparent 26rem), radial-gradient(circle at 95% 75%, rgba(255, 158, 104, .2), transparent 27rem), linear-gradient(125deg, #172c72, #4c3aa0 60%, #7e469c) !important;
}

.horizon-theme .navy-band h2,
.horizon-theme .navy-band h3,
.horizon-theme .navy-band p {
    color: var(--horizon-white);
}

.horizon-theme .feature-item {
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 20px;
    color: var(--horizon-white);
    background: rgba(255, 255, 255, .1);
    box-shadow: 0 16px 35px rgba(16, 26, 82, .12);
    backdrop-filter: blur(12px);
}

.horizon-theme .feature-item:hover {
    border-color: rgba(255, 220, 156, .55);
    background: rgba(255, 255, 255, .16);
}

.horizon-theme .process-card::before,
.horizon-theme .legal-step-card span {
    color: var(--horizon-white);
    background: linear-gradient(135deg, var(--horizon-blue), var(--horizon-violet));
}

.horizon-theme .testimonial-card span {
    color: var(--horizon-violet);
}

.horizon-theme .premium-accordion .accordion-item {
    overflow: hidden;
    border: 1px solid rgba(36, 95, 214, .12);
    border-radius: 18px;
    background: rgba(255, 255, 255, .78);
    box-shadow: 0 12px 30px rgba(48, 63, 128, .06);
}

.horizon-theme .premium-accordion .accordion-button {
    color: var(--horizon-ink);
    background: transparent;
}

.horizon-theme .premium-accordion .accordion-button:not(.collapsed) {
    color: var(--horizon-blue);
    background: linear-gradient(135deg, rgba(65, 136, 233, .1), rgba(121, 76, 215, .1));
    box-shadow: none;
}

.horizon-theme .cta-band {
    overflow: hidden;
    background: radial-gradient(circle at 50% 120%, rgba(99, 183, 255, .2), transparent 30rem), linear-gradient(145deg, #fff8ee, #f2f7ff) !important;
}

.horizon-theme .cta-panel {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .65);
    background: radial-gradient(circle at 90% 15%, rgba(255, 199, 106, .25), transparent 18rem), linear-gradient(125deg, #1d49b0, #6541c4 62%, #8e4a9d);
    box-shadow: 0 35px 80px rgba(43, 51, 135, .24);
}

.horizon-theme .cta-panel h2,
.horizon-theme .cta-panel p {
    color: var(--horizon-white);
}

.horizon-theme .page-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.horizon-theme .page-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: radial-gradient(circle at 85% 0%, rgba(255, 195, 100, .28), transparent 22rem), linear-gradient(110deg, rgba(19, 42, 112, .96), rgba(68, 53, 154, .82) 58%, rgba(127, 69, 150, .68));
}

.horizon-theme .page-hero::after {
    content: "";
    position: absolute;
    top: -8rem;
    right: -7rem;
    z-index: -1;
    width: 30rem;
    height: 30rem;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 42% 58% 57% 43% / 48% 40% 60% 52%;
    background: rgba(255, 255, 255, .06);
    transform: rotate(24deg);
}

.horizon-theme .page-hero h1 {
    color: var(--horizon-white);
}

.horizon-theme .page-hero p {
    color: rgba(255, 255, 255, .84);
}

.horizon-theme .page-hero .eyebrow {
    color: #ffd98d;
}

.horizon-theme .breadcrumb-wrap {
    border-bottom: 1px solid rgba(36, 95, 214, .08);
}

.horizon-theme .form-shell {
    border: 1px solid rgba(255, 255, 255, .85);
    border-radius: 30px;
    background: linear-gradient(rgba(255, 255, 255, .88), rgba(255, 252, 246, .9)) padding-box, linear-gradient(135deg, rgba(36, 95, 214, .34), rgba(113, 71, 216, .22), rgba(255, 123, 98, .28)) border-box;
    box-shadow: var(--horizon-shadow);
}

.horizon-theme .booking-form .form-control,
.horizon-theme .booking-form .form-select,
.horizon-theme .newsletter-form .form-control {
    min-height: 52px;
    border: 1px solid rgba(43, 84, 170, .16);
    border-radius: 14px;
    color: var(--horizon-ink);
    background: rgba(255, 255, 255, .8);
}

.horizon-theme .booking-form .form-control:focus,
.horizon-theme .booking-form .form-select:focus,
.horizon-theme .newsletter-form .form-control:focus {
    border-color: rgba(87, 75, 207, .55);
    box-shadow: 0 0 0 .22rem rgba(87, 75, 207, .11);
}

.horizon-theme .phone-code-trigger {
    border-color: rgba(43, 84, 170, .16);
    border-radius: 14px;
    background: rgba(255, 255, 255, .8);
}

.horizon-theme .phone-code-menu {
    border-radius: 16px;
    box-shadow: 0 20px 45px rgba(39, 50, 117, .18);
}

.horizon-theme .payment-notice {
    border: 1px solid rgba(236, 184, 91, .36);
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(255, 225, 166, .28), rgba(255, 255, 255, .65));
}

.horizon-theme .site-footer {
    position: relative;
    overflow: hidden;
    padding-top: 6rem;
}

.horizon-theme .site-footer::before {
    content: "";
    position: absolute;
    top: -12rem;
    right: -10rem;
    width: 32rem;
    height: 32rem;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
}

.horizon-theme .social-links a {
    border-radius: 12px;
    color: var(--horizon-white);
    background: linear-gradient(135deg, #3d73dd, #8251cf);
}

.horizon-theme .social-links a:hover {
    color: var(--horizon-ink);
    background: linear-gradient(135deg, #ffd175, #ff866b);
}

.horizon-theme .floating-whatsapp {
    border: 3px solid rgba(255, 255, 255, .85);
    background: linear-gradient(135deg, #1fd57a, #12a971);
    box-shadow: 0 16px 34px rgba(20, 173, 104, .32);
}

.horizon-theme .back-to-top {
    color: var(--horizon-white);
    background: linear-gradient(135deg, var(--horizon-blue), var(--horizon-violet));
    box-shadow: 0 14px 32px rgba(61, 70, 174, .3);
}

@media (max-width: 1199.98px) {
    .horizon-theme .site-logo-mark {
        width: 255px;
    }

    .horizon-theme .navbar-nav .nav-link {
        padding-right: .6rem;
        padding-left: .6rem;
        font-size: 1.1rem;
    }

    .horizon-theme .nav-cta {
        padding-right: 1rem;
        padding-left: 1rem;
    }
}

@media (max-width: 991.98px) {
    .horizon-theme .top-strip-inner {
        min-height: 38px;
        padding: .45rem 0;
    }

    .horizon-theme .top-strip-inner > span {
        display: none;
    }

    .horizon-theme .luxury-navbar {
        padding: .55rem .5rem .75rem;
    }

    .horizon-theme .luxury-navbar .container {
        min-height: 76px;
        padding: .45rem .55rem .45rem .75rem;
        border-radius: 22px;
    }

    .horizon-theme .site-logo-mark {
        width: 225px;
        height: 66px;
    }

    .horizon-theme .navbar-collapse {
        margin-top: .75rem;
        padding: .75rem;
        border: 1px solid rgba(71, 85, 167, .12);
        border-radius: 22px;
        background: radial-gradient(circle at 100% 0%, rgba(112, 71, 216, .12), transparent 16rem), rgba(255, 255, 255, .97);
        box-shadow: 0 22px 55px rgba(42, 53, 119, .16);
    }

    .horizon-theme .navbar-nav {
        align-items: stretch !important;
        gap: .2rem;
    }

    .horizon-theme .navbar-nav .nav-link {
        padding: .85rem .95rem;
        border-radius: 14px;
        font-size: 1.1rem;
    }

    .horizon-theme .nav-item.ms-lg-3 {
        margin-top: .5rem;
    }

    .horizon-theme .nav-cta {
        width: 100%;
    }

    .horizon-theme .luxury-dropdown {
        border: 0;
        box-shadow: none;
        background: rgba(241, 246, 255, .82);
    }

    .horizon-theme .hero-section {
        min-height: auto;
        padding: 4.5rem 0 5rem;
    }

    .horizon-theme .hero-copy h1 {
        font-size: clamp(3.4rem, 11vw, 4rem);
    }

    .horizon-theme .hero-brand-panel {
        max-width: 650px;
    }

    .horizon-theme .reference-service-strip {
        margin-top: 0;
        padding-top: 3.5rem;
    }

    .horizon-theme .story-image-caption {
        right: 1rem;
    }
}

@media (max-width: 575.98px) {
    .horizon-theme .top-strip {
        font-size: 1.1rem;
    }

    .horizon-theme .contact-cluster {
        justify-content: center;
        gap: .7rem;
        width: 100%;
    }

    .horizon-theme .luxury-navbar {
        padding-right: .25rem;
        padding-left: .25rem;
    }

    .horizon-theme .luxury-navbar .container {
        border-radius: 18px;
    }

    .horizon-theme .navbar-brand {
        padding: .15rem .35rem;
    }

    .horizon-theme .site-logo-mark {
        width: 205px;
        height: 60px;
    }

    .horizon-theme .navbar-toggler {
        padding: .6rem;
        border-radius: 13px;
    }

    .horizon-theme .hero-section {
        padding: 4rem 0 4.25rem;
        background-position: 57% center !important;
    }

    .horizon-theme .hero-copy h1 {
        margin-top: 1rem;
        font-size: clamp(3.15rem, 15vw, 4rem);
        line-height: .96;
    }

    .horizon-theme .hero-copy p {
        font-size: 1.1rem;
    }

    .horizon-theme .hero-copy .button-row .btn {
        width: 100%;
    }

    .horizon-theme .hero-brand-panel {
        padding: 1.1rem;
        border-radius: 24px;
    }

    .horizon-theme .hero-brand-logo {
        border-radius: 17px;
    }

    .horizon-theme .section-padding {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }

    .horizon-theme .section-header h2,
.horizon-theme .director-copy h2 {
        font-size: clamp(2.45rem, 12vw, 3.35rem);
    }

    .horizon-theme .reference-tile,
.horizon-theme .service-card,
.horizon-theme .testimonial-card,
.horizon-theme .google-review-card,
.horizon-theme .lux-card,
.horizon-theme .process-card,
.horizon-theme .form-shell,
.horizon-theme .home-address-panel,
.horizon-theme .map-panel,
.horizon-theme .google-reviews-shell,
.horizon-theme .achievement-carousel,
.horizon-theme .cta-panel {
        border-radius: 21px;
    }

    .horizon-theme .homepage-story-image {
        border-radius: 26px 26px 70px 26px;
    }

    .horizon-theme .director-visual::before {
        border-radius: 25px 25px 64px 25px;
    }

    .horizon-theme .director-frame {
        border-radius: 19px;
    }

    .horizon-theme .director-credential {
        border-radius: 14px;
    }

    .horizon-theme .page-hero {
        min-height: 390px;
    }

    .horizon-theme .page-hero h1 {
        font-size: clamp(3rem, 15vw, 4rem);
    }

    .horizon-theme .floating-whatsapp {
        width: 48px;
        height: 48px;
        right: .65rem;
        bottom: 1rem;
    }

    .horizon-theme .back-to-top {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .horizon-theme *,
.horizon-theme *::before,
.horizon-theme *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
    }
}

.horizon-theme .horizon-header {
    padding: .6rem 0 0;
    backdrop-filter: blur(22px);
}

.horizon-theme .horizon-availability {
    align-items: center;
    gap: .5rem;
}

.horizon-theme .horizon-availability i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #25be78;
    box-shadow: 0 0 0 5px rgba(37, 190, 120, .12);
}

.horizon-theme .horizon-navbar .container {
    min-height: 112px;
    padding: .45rem .55rem .45rem .7rem;
    border-color: rgba(63, 82, 157, .1);
    border-radius: 18px;
    box-shadow: 0 15px 45px rgba(37, 49, 110, .1);
}

.horizon-theme .horizon-brand {
    grid-template-columns: auto;
    gap: 0;
}

.horizon-theme .horizon-brand-note {
    margin: -.3rem 0 0 .65rem;
    color: #71809a;
    font-size: 1.1rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.horizon-theme .horizon-brand .site-logo-mark {
    width: 350px;
    height: 92px;
}

.horizon-theme .nav-cta b {
    font-size: 1.15rem;
}

.horizon-theme .horizon-home-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: radial-gradient(circle at 4% 20%, rgba(77, 174, 255, .22), transparent 27rem), radial-gradient(circle at 96% 18%, rgba(255, 141, 98, .17), transparent 25rem), linear-gradient(135deg, #f7fbff 0%, #fff9ef 56%, #f4eeff 100%);
}

.horizon-theme .horizon-home-hero::before {
    content: "";
    position: absolute;
    top: 5rem;
    left: 52%;
    z-index: -1;
    width: 48rem;
    height: 48rem;
    border: 1px solid rgba(74, 89, 184, .12);
    border-radius: 50%;
}

.horizon-theme .horizon-home-hero::after {
    content: "AU";
    position: absolute;
    left: -2rem;
    bottom: -8.5rem;
    z-index: -1;
    color: rgba(31, 67, 151, .035);
    font-family: "EB Garamond", Georgia, serif;
    font-size: 4rem;
    font-weight: 700;
    line-height: 1;
}

.horizon-theme .horizon-hero-grid {
    display: grid;
}

.horizon-theme .horizon-hero-overline {
    display: flex;
    align-items: center;
    color: var(--horizon-blue);
    font-weight: 800;
    text-transform: uppercase;
}

.horizon-theme .horizon-hero-overline b {
    border: 1px solid rgba(91, 77, 197, .16);
    border-radius: 999px;
    color: var(--horizon-violet);
}

.horizon-theme .horizon-text-action {
    display: inline-flex;
    align-items: center;
    gap: .7rem;
    color: var(--horizon-white);
    font-weight: 700;
}

.horizon-theme .horizon-text-action.dark {
    color: var(--horizon-blue);
}

.horizon-theme .horizon-text-action span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid currentColor;
    border-radius: 50%;
}

.horizon-theme .horizon-hero-copy .horizon-text-action {
    color: var(--horizon-blue);
}

.horizon-theme .horizon-hero-proof strong,
.horizon-theme .horizon-hero-proof span {
    display: block;
}

.horizon-theme .horizon-hero-stage {
    position: relative;
}

.horizon-theme .horizon-hero-stage::before {
    content: "";
    position: absolute;
    inset: 5% 5% 3% 7%;
    border-radius: 49% 49% 24px 24px;
    background: linear-gradient(145deg, #244fc3, #7648ce 66%, #a55a9a);
    box-shadow: 0 38px 90px rgba(54, 58, 145, .25);
}

.horizon-theme .horizon-hero-image {
    position: absolute;
    inset: 8% 9% 7% 11%;
    z-index: 1;
    overflow: hidden;
    border: 8px solid rgba(255, 255, 255, .78);
    border-radius: 49% 49% 20px 20px;
    box-shadow: 0 30px 70px rgba(37, 43, 111, .22);
}

.horizon-theme .horizon-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 48% center;
}

.horizon-theme .horizon-orbit {
    position: absolute;
    z-index: 0;
    border: 1px solid rgba(54, 84, 178, .2);
    border-radius: 50%;
}

.horizon-theme .horizon-orbit-one {
    inset: 0 1% 0 0;
}

.horizon-theme .horizon-orbit-two {
    inset: 10% -5% 9% 9%;
    border-color: rgba(255, 121, 92, .24);
}

.horizon-theme .horizon-profile-card,
.horizon-theme .horizon-route-card,
.horizon-theme .horizon-hero-logo {
    position: absolute;
    z-index: 3;
    border: 1px solid rgba(255, 255, 255, .72);
    box-shadow: 0 20px 50px rgba(41, 48, 119, .2);
    backdrop-filter: blur(18px);
}

.horizon-theme .horizon-profile-card {
    right: -1rem;
    bottom: 3.5rem;
    width: 245px;
    padding: 1.2rem 1.3rem;
    border-radius: 18px;
    color: var(--horizon-white);
    background: linear-gradient(135deg, rgba(29, 67, 173, .94), rgba(111, 57, 187, .92));
}

.horizon-theme .horizon-profile-card span,
.horizon-theme .horizon-profile-card strong,
.horizon-theme .horizon-profile-card small {
    display: block;
}

.horizon-theme .horizon-profile-card span {
    color: #ffd985;
    font-size: 1.1rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.horizon-theme .horizon-profile-card strong {
    margin: .3rem 0;
    font-family: "EB Garamond", Georgia, serif;
    font-size: 1.45rem;
}

.horizon-theme .horizon-profile-card small {
    color: rgba(255, 255, 255, .72);
}

.horizon-theme .horizon-route-card {
    left: -2.2rem;
    bottom: 8.5rem;
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: .8rem 1rem;
    border-radius: 999px;
    color: #3e4b6a;
    background: rgba(255, 255, 255, .88);
    font-size: 1.1rem;
    font-weight: 800;
}

.horizon-theme .horizon-route-card i {
    width: 20px;
    height: 1px;
    background: linear-gradient(90deg, var(--horizon-blue), var(--horizon-coral));
}

.horizon-theme .horizon-hero-logo {
    top: 4rem;
    right: -1rem;
    width: 220px;
    padding: .85rem;
    border-radius: 16px;
    background: rgba(255, 255, 255, .9);
}

.horizon-theme .horizon-pathway-nav {
    position: relative;
    z-index: 4;
}

.horizon-theme .horizon-pathway-heading {
    justify-content: space-between;
    padding: 0 .25rem;
}

.horizon-theme .horizon-pathway-rail {
    border: 1px solid rgba(255, 255, 255, .9);
    backdrop-filter: blur(18px);
}

.horizon-theme .horizon-pathway-rail a {
    position: relative;
    padding: 1.25rem;
    border-right: 1px solid rgba(48, 76, 162, .09);
}

.horizon-theme .horizon-pathway-rail a:last-child {
    border-right: 0;
}

.horizon-theme .horizon-pathway-rail a:hover {
    color: var(--horizon-white);
    background: linear-gradient(145deg, #245fd6, #7046d2);
}

.horizon-theme .horizon-pathway-rail b,
.horizon-theme .horizon-pathway-rail span,
.horizon-theme .horizon-pathway-rail i {
    display: block;
}

.horizon-theme .horizon-pathway-rail b {
    margin-bottom: 2.2rem;
    color: var(--horizon-coral);
    font-size: 1.1rem;
}

.horizon-theme .horizon-pathway-rail span {
    font-family: "EB Garamond", Georgia, serif;
}

.horizon-theme .horizon-pathway-rail i {
    position: absolute;
    right: 1.1rem;
    bottom: 1rem;
    font-style: normal;
}

.horizon-theme .horizon-pathway-rail a:hover b,
.horizon-theme .horizon-pathway-rail a:hover span {
    color: var(--horizon-white);
}

.horizon-theme .horizon-manifesto {
    background: #fffdf9 !important;
}

.horizon-theme .horizon-manifesto-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 3rem 7rem;
}

.horizon-theme .horizon-manifesto-title h2 {
    max-width: 700px;
    margin-top: 1rem;
    font-size: clamp(3.5rem, 5.7vw, 4rem);
    line-height: .95;
}

.horizon-theme .horizon-manifesto-copy {
    align-self: end;
    padding-bottom: .8rem;
}

.horizon-theme .horizon-manifesto-copy p {
    font-size: 1.1rem;
    line-height: 1.8;
}

.horizon-theme .horizon-principles {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.horizon-theme .horizon-principles article {
    border-right: 1px solid rgba(42, 71, 157, .1);
}

.horizon-theme .horizon-principles article + article {
    padding-left: 2rem;
}

.horizon-theme .horizon-principles article:last-child {
    border-right: 0;
}

.horizon-theme .horizon-principles b {
    color: var(--horizon-coral);
}

.horizon-theme .horizon-principles h3 {
    margin: 1.2rem 0 .5rem;
}

.horizon-theme .horizon-director-shell {
    display: grid;
    grid-template-columns: .72fr 1.1fr .92fr;
    gap: 2rem;
    align-items: center;
}

.horizon-theme .horizon-director-heading {
    align-self: start;
    padding-top: 1.2rem;
}

.horizon-theme .horizon-director-heading small {
    display: block;
    margin: 2.5rem 0 1rem;
    color: var(--horizon-coral);
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.horizon-theme .horizon-director-heading h2 {
    font-size: clamp(3rem, 4.2vw, 4rem);
    line-height: .96;
}

.horizon-theme .horizon-director-portrait {
    position: relative;
    min-height: 600px;
    overflow: hidden;
    border-radius: 220px 220px 24px 24px;
    background: linear-gradient(145deg, #2559ce, #794ace);
    box-shadow: 0 35px 80px rgba(42, 52, 133, .22);
}

.horizon-theme .horizon-director-portrait > img {
    width: 100%;
    height: 100%;
    min-height: 600px;
    object-fit: cover;
}

.horizon-theme .horizon-director-portrait .director-credential {
    right: 1.2rem;
    bottom: 1.2rem;
    left: 1.2rem;
    min-width: 0;
}

.horizon-theme .horizon-kicker {
    color: var(--horizon-blue);
    font-size: 25px;
    font-weight: 800;
    text-transform: uppercase;
}

.horizon-theme .horizon-director-shell .director-copy h3 {
    margin: .7rem 0 1.2rem;
    font-size: 3rem;
}

.horizon-theme .horizon-director-shell .director-copy p {
    line-height: 1.8;
}

.horizon-theme .horizon-services-intro {
    display: grid;
}

.horizon-theme .horizon-services-intro h2 {
    margin-top: 1rem;
}

.horizon-theme .horizon-service-item:nth-child(6),
.horizon-theme .horizon-service-item:nth-child(7) {
    grid-column: span 6;
}

.horizon-theme .service-card {
    display: grid;
    grid-template-rows: 225px 1fr;
    min-height: 100%;
    border-radius: 18px;
}

.horizon-theme .service-card-featured .service-card {
    grid-template-columns: 1.08fr .92fr;
    grid-template-rows: minmax(470px, 1fr);
}

.horizon-theme .service-card-featured .service-card-image {
    min-height: 470px;
}

.horizon-theme .service-card-featured .service-card-image img {
    border-radius: 18px 0 0 18px;
}

.horizon-theme .service-card-featured .service-card-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 2.3rem;
}

.horizon-theme .service-card-featured .service-card-body h3 {
    font-size: 2.4rem;
}

.horizon-theme .service-index {
    display: block;
    margin-bottom: 1.4rem;
    color: var(--horizon-coral);
    font-size: 1.1rem;
    font-weight: 800;
}

.horizon-theme .horizon-process-section {
    overflow: hidden;
    color: var(--horizon-white);
    background: radial-gradient(circle at 90% 10%, rgba(255, 159, 99, .2), transparent 25rem), linear-gradient(125deg, #162a6d, #493797 62%, #753e8a) !important;
}

.horizon-theme .horizon-process-lead {
    display: grid;
    grid-template-columns: .65fr 1.2fr .75fr;
    gap: 2rem;
    align-items: end;
    margin-bottom: 4rem;
}

.horizon-theme .horizon-process-lead h2,
.horizon-theme .horizon-process-lead p {
    color: var(--horizon-white);
}

.horizon-theme .horizon-process-lead h2 {
    font-size: clamp(3.3rem, 5vw, 4rem);
    line-height: .95;
}

.horizon-theme .horizon-process-section > .container > .section-heading {
    display: none;
}

.horizon-theme .horizon-process {
    position: relative;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
}

.horizon-theme .horizon-process::before {
    content: "";
    position: absolute;
    top: 2.1rem;
    right: 10%;
    left: 10%;
    height: 1px;
    background: linear-gradient(90deg, #ffcf70, rgba(255, 255, 255, .35), #ff8266);
}

.horizon-theme .horizon-process .process-card {
    position: relative;
    padding: 0 1.7rem;
    border: 0;
    border-right: 1px solid rgba(255, 255, 255, .16);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.horizon-theme .horizon-process .process-card:last-child {
    border-right: 0;
}

.horizon-theme .horizon-process .process-card > span {
    position: relative;
    z-index: 1;
    display: inline-flex;
    width: 4.2rem;
    height: 4.2rem;
    align-items: center;
    justify-content: center;
    margin-bottom: 2rem;
    border: 6px solid #312c83;
    border-radius: 50%;
    color: #28306f;
    background: linear-gradient(135deg, #ffd773, #ff8a68);
}

.horizon-theme .horizon-process .process-card h3,
.horizon-theme .horizon-process .process-card p {
    color: var(--horizon-white);
}

.horizon-theme .horizon-review-wall {
    background: #fffdf8 !important;
}

.horizon-theme .horizon-review-grid {
    display: grid;
    grid-template-columns: .74fr 1.26fr;
    gap: 6rem;
}

.horizon-theme .horizon-review-heading {
    position: sticky;
    top: 150px;
    align-self: start;
}

.horizon-theme .horizon-review-heading h2 {
    margin: 1rem 0 2rem;
    font-size: clamp(3.3rem, 4.8vw, 4rem);
    line-height: .96;
}

.horizon-theme .horizon-rating {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: .2rem 1rem;
    margin-bottom: 2rem;
}

.horizon-theme .horizon-rating strong {
    grid-row: span 2;
    font-family: "EB Garamond", Georgia, serif;
    font-size: 3.5rem;
}

.horizon-theme .horizon-rating span {
    color: #f1ad3e;
    letter-spacing: .12em;
}

.horizon-theme .horizon-rating small {
    color: var(--horizon-muted);
}

.horizon-theme .horizon-review-list {
    border-top: 1px solid rgba(46, 75, 158, .14);
}

.horizon-theme .horizon-review-list article {
    display: grid;
    grid-template-columns: 55px 1fr 175px;
    gap: 1.5rem;
    align-items: start;
    padding: 2.3rem 0;
    border-bottom: 1px solid rgba(46, 75, 158, .14);
}

.horizon-theme .horizon-review-list article > span {
    color: var(--horizon-coral);
    font-size: 1.1rem;
    font-weight: 800;
}

.horizon-theme .horizon-review-list article > p {
    margin: 0;
    color: var(--horizon-ink);
    font-family: "EB Garamond", Georgia, serif;
    font-size: 1.55rem;
    line-height: 1.45;
}

.horizon-theme .horizon-review-list article div {
    display: grid;
    gap: .25rem;
}

.horizon-theme .horizon-review-list small {
    color: var(--horizon-muted);
}

.horizon-theme .achievement-section {
    padding-top: 5rem;
    padding-bottom: 5rem;
}

.horizon-theme .achievement-section .section-heading {
    display: none;
}

.horizon-theme .achievement-carousel {
    max-width: 950px;
    margin: 0 auto;
    border-radius: 18px;
}

.horizon-theme .horizon-office-hub {
    background: radial-gradient(circle at 95% 0%, rgba(117, 71, 210, .12), transparent 25rem), linear-gradient(135deg, #eff7ff, #fff7eb) !important;
}

.horizon-theme .horizon-office-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    min-height: 620px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .88);
    border-radius: 26px;
    background: rgba(255, 255, 255, .76);
    box-shadow: var(--horizon-shadow);
}

.horizon-theme .horizon-office-map {
    position: relative;
    min-height: 620px;
}

.horizon-theme .horizon-office-map iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

.horizon-theme .horizon-office-map > span {
    position: absolute;
    top: 1.2rem;
    left: 1.2rem;
    padding: .65rem .9rem;
    border-radius: 999px;
    color: var(--horizon-white);
    background: linear-gradient(135deg, #245fd6, #7147d8);
    font-size: 1.1rem;
    font-weight: 800;
}

.horizon-theme .horizon-office-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(2.5rem, 5vw, 5rem);
}

.horizon-theme .horizon-office-copy h2 {
    margin: 1rem 0 2rem;
    font-size: clamp(3rem, 4vw, 2rem);
    line-height: .96;
}

.horizon-theme .horizon-office-copy address {
    color: var(--horizon-muted);
    font-style: normal;
}

.horizon-theme .horizon-office-copy address strong {
    margin-bottom: .4rem;
    color: var(--horizon-ink);
    font-size: 1.15rem;
}

.horizon-theme .horizon-office-contact {
    display: grid;
    grid-template-columns: 1fr;
    border-top: 1px solid rgba(50, 76, 158, .12);
}

.horizon-theme .horizon-office-contact a {
    display: grid;
    gap: .2rem;
    padding: 1rem 0;
    border-bottom: 1px solid rgba(50, 76, 158, .12);
    color: var(--horizon-blue);
    font-weight: 700;
}

.horizon-theme .horizon-office-contact small {
    color: var(--horizon-muted);
    font-size: 1.1rem;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.horizon-theme .horizon-faq-section {
    background: #fffdf9 !important;
}

.horizon-theme .horizon-faq-grid {
    display: grid;
    grid-template-columns: .65fr 1.35fr;
    gap: 6rem;
    align-items: start;
}

.horizon-theme .horizon-faq-intro {
    position: sticky;
    top: 150px;
}

.horizon-theme .horizon-faq-intro h2 {
    margin: 1rem 0;
    font-size: clamp(3rem, 4.4vw, 4rem);
    line-height: .96;
}

.horizon-theme .horizon-page-intro {
    min-height: auto;
    padding: 5rem 0;
    background: radial-gradient(circle at 92% 10%, rgba(255, 145, 100, .17), transparent 23rem), linear-gradient(135deg, #f2f8ff, #fff8ed) !important;
}

.horizon-theme .horizon-page-intro::before,
.horizon-theme .horizon-page-intro::after {
    display: none;
}

.horizon-theme .horizon-page-grid {
    display: grid;
    grid-template-columns: 1fr .8fr;
    gap: 6rem;
    align-items: center;
}

.horizon-theme .horizon-page-intro .page-hero-content h1 {
    margin: 1rem 0 1.4rem;
    color: var(--horizon-ink);
    font-size: clamp(4rem, 6.5vw, 4rem);
    line-height: .9;
}

.horizon-theme .horizon-page-intro .page-hero-content p {
    max-width: 680px;
    color: var(--horizon-muted);
    font-size: 1.1rem;
}

.horizon-theme .horizon-page-actions {
    display: flex;
    align-items: center;
    gap: 2rem;
    margin-top: 2rem;
}

.horizon-theme .horizon-page-actions a {
    color: var(--horizon-blue);
    font-weight: 800;
}

.horizon-theme .horizon-page-actions a span {
    margin-left: .4rem;
}

.horizon-theme .horizon-page-actions small {
    color: var(--horizon-violet);
    font-weight: 800;
}

.horizon-theme .horizon-page-visual {
    position: relative;
    min-height: 470px;
    overflow: hidden;
    border-radius: 48% 48% 24px 24px;
    box-shadow: 0 30px 75px rgba(43, 53, 127, .2);
}

.horizon-theme .horizon-page-visual > img {
    width: 100%;
    height: 100%;
    min-height: 470px;
    object-fit: cover;
}

.horizon-theme .horizon-page-stamp {
    position: absolute;
    right: 1rem;
    bottom: 1rem;
    left: 1rem;
    padding: 1rem 1.15rem;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 15px;
    color: var(--horizon-white);
    background: linear-gradient(135deg, rgba(29, 66, 169, .92), rgba(105, 57, 181, .9));
    backdrop-filter: blur(15px);
}

.horizon-theme .horizon-page-stamp span,
.horizon-theme .horizon-page-stamp strong {
    display: block;
}

.horizon-theme .horizon-page-stamp span {
    margin-bottom: .25rem;
    color: #ffd983;
    font-size: 1.1rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.horizon-theme .breadcrumb-wrap {
    background: #fffdf9;
}

.horizon-theme .interconnected-panel {
    grid-template-columns: 1.35fr .65fr;
    overflow: hidden;
    border-radius: 24px;
}

.horizon-theme .interconnected-director {
    background: linear-gradient(135deg, #193779, #6640b6);
}

.horizon-theme .interconnected-director h2 {
    color: #ffffff;
    text-shadow: 0 10px 30px rgba(5, 13, 47, .18);
}

.horizon-theme .interconnected-director p {
    color: rgba(255, 255, 255, .8);
}

.horizon-theme .interconnected-director .eyebrow {
    color: #ffd783;
}

.horizon-theme .interconnected-director img {
    border-radius: 0;
}

.horizon-theme .related-pathways {
    background: #fffdf9;
}

.horizon-theme .horizon-about-story-grid,
.horizon-theme .horizon-service-overview-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: clamp(3rem, 7vw, 7rem);
    align-items: center;
}

.horizon-theme .horizon-service-value-grid {
    display: grid;
    gap: clamp(3rem, 7vw, 7rem);
}

.horizon-theme .horizon-post-visa-grid {
    display: grid;
    gap: clamp(3rem, 7vw, 7rem);
    align-items: center;
}

.horizon-theme .horizon-contact-booking-grid,
.horizon-theme .horizon-booking-grid {
    display: grid;
    gap: clamp(3rem, 7vw, 7rem);
}

.horizon-theme .horizon-about-story-copy h2,
.horizon-theme .horizon-service-overview-copy h2,
.horizon-theme .horizon-service-value-copy h2,
.horizon-theme .horizon-post-visa-copy h2,
.horizon-theme .horizon-contact-intro h2,
.horizon-theme .horizon-booking-intro h2 {
    margin: 1rem 0 1.4rem;
    font-size: clamp(3rem, 4.8vw, 4rem);
    line-height: .96;
}

.horizon-theme .horizon-about-story-image,
.horizon-theme .horizon-service-overview-image,
.horizon-theme .horizon-post-visa-image {
    position: relative;
}

.horizon-theme .horizon-about-story-image .image-frame,
.horizon-theme .horizon-service-overview-image .image-frame {
    overflow: hidden;
    border-radius: 220px 220px 24px 24px;
    box-shadow: 0 32px 76px rgba(43, 55, 132, .18);
}

.horizon-theme .horizon-post-visa-image .image-frame {
    overflow: hidden;
    box-shadow: 0 32px 76px rgba(43, 55, 132, .18);
}

.horizon-theme .horizon-service-overview-image > span {
    position: absolute;
    right: -1rem;
    bottom: 1.4rem;
    padding: .9rem 1.1rem;
    border-radius: 14px;
    color: var(--horizon-white);
    background: linear-gradient(135deg, #245fd6, #7147d8);
    font-size: 1.1rem;
    font-weight: 800;
    box-shadow: 0 16px 34px rgba(47, 58, 148, .23);
}

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

.horizon-theme .horizon-values-grid .lux-card {
    padding: 1.8rem;
}

.horizon-theme .horizon-benefit-grid .lux-card {
    min-height: 245px;
    padding: 1.8rem;
}

.horizon-theme .horizon-values-grid h3,
.horizon-theme .horizon-benefit-grid h3 {
    font-size: 1.8rem;
}

.horizon-theme .horizon-service-value-grid {
    grid-template-columns: .72fr 1.28fr;
    align-items: start;
}

.horizon-theme .horizon-service-value .feature-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.horizon-theme .horizon-post-visa {
    background: #fffdf9 !important;
}

.horizon-theme .horizon-post-visa-grid {
    grid-template-columns: 1.1fr .9fr;
}

.horizon-theme .horizon-post-visa-image .image-frame {
    border-radius: 24px 180px 24px 24px;
}

.horizon-theme .horizon-evidence-section {
    background: radial-gradient(circle at 90% 0%, rgba(117, 74, 210, .1), transparent 23rem), #fffdf9 !important;
}

.horizon-theme .horizon-evidence-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 1.2rem;
}

.horizon-theme .horizon-evidence-grid .content-panel {
    min-height: 100%;
    padding: clamp(2rem, 4vw, 3.5rem);
    border-radius: 20px;
}

.horizon-theme .horizon-evidence-grid > div:first-child .content-panel {
    color: var(--horizon-white);
    background: radial-gradient(circle at 100% 0%, rgba(255, 196, 103, .2), transparent 20rem), linear-gradient(135deg, #193b91, #6941bb);
}

.horizon-theme .horizon-evidence-grid > div:first-child h2,
.horizon-theme .horizon-evidence-grid > div:first-child li {
    color: var(--horizon-white);
}

.horizon-theme .horizon-evidence-grid > div:first-child .eyebrow {
    color: #ffd47d;
}

.horizon-theme .horizon-help-grid {
    display: grid;
    grid-template-columns: .65fr 1.35fr;
    gap: 6rem;
    align-items: start;
}

.horizon-theme .horizon-help-intro {
    position: sticky;
    top: 150px;
}

.horizon-theme .horizon-help-intro h2 {
    margin: 1rem 0;
    font-size: clamp(3rem, 4.5vw, 4rem);
    line-height: .96;
}

.horizon-theme .horizon-help-section .stack-list {
    border-top: 1px solid rgba(50, 76, 158, .13);
}

.horizon-theme .horizon-help-section .stack-item {
    padding: 2rem 0;
    border: 0;
    border-bottom: 1px solid rgba(50, 76, 158, .13);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.horizon-theme .horizon-contact-booking-grid {
    grid-template-columns: .66fr 1.34fr;
}

.horizon-theme .horizon-booking-grid {
    grid-template-columns: .66fr 1.34fr;
    align-items: start;
}

.horizon-theme .horizon-contact-intro,
.horizon-theme .horizon-booking-intro {
    position: sticky;
    top: 150px;
}

.horizon-theme .horizon-contact-intro .contact-card,
.horizon-theme .horizon-booking-intro .content-panel {
    margin-top: 2rem;
    border-radius: 20px;
    background: radial-gradient(circle at 100% 0%, rgba(255, 200, 112, .2), transparent 16rem), linear-gradient(135deg, #1d419b, #6940b9);
}

.horizon-theme .horizon-contact-intro .contact-card *,
.horizon-theme .horizon-booking-intro .content-panel *,
.horizon-theme .horizon-booking-intro .content-panel li {
    color: var(--horizon-white);
}

.horizon-theme .horizon-contact-booking-grid .form-shell,
.horizon-theme .horizon-booking-grid .form-shell {
    padding: clamp(1.25rem, 3vw, 2.5rem);
}

.horizon-theme .horizon-footer-intro {
    display: grid;
    grid-template-columns: .6fr 1.4fr auto;
    gap: 2rem;
    align-items: end;
    margin-bottom: 5rem;
    padding-bottom: 3rem;
    border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.horizon-theme .horizon-footer-intro > span {
    color: #ffd47d;
    font-size: 1.1rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.horizon-theme .horizon-footer-intro h2 {
    margin: 0;
    color: var(--horizon-white);
    font-size: clamp(3rem, 4.4vw, 4rem);
    line-height: .95;
}

@media (max-width: 1199.98px) {
    .horizon-theme .horizon-hero-grid {
        grid-template-columns: 1fr 430px;
        gap: 3rem;
    }

    .horizon-theme .horizon-hero-copy h1 {
        font-size: 4rem;
    }

    .horizon-theme .horizon-director-shell {
        grid-template-columns: .8fr 1.1fr;
    }

    .horizon-theme .horizon-director-heading {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: .4fr .6fr;
        gap: 2rem;
        align-items: end;
    }

    .horizon-theme .horizon-director-heading small {
        display: none;
    }

    .horizon-theme .horizon-director-heading h2 {
        margin: 0;
    }
}

@media (max-width: 991.98px) {
    .horizon-theme .horizon-header {
        padding-top: .35rem;
    }

    .horizon-theme .horizon-contact-bar {
        justify-content: center;
    }

    .horizon-theme .horizon-availability {
        display: none;
    }

    .horizon-theme .horizon-navbar {
        padding-bottom: .45rem;
    }

    .horizon-theme .horizon-navbar .container {
        min-height: 76px;
    }

    .horizon-theme .horizon-brand-note {
        display: none;
    }

    .horizon-theme .horizon-brand .site-logo-mark {
        width: 270px;
        height: 74px;
    }

    .horizon-theme .horizon-hero-grid,
.horizon-theme .horizon-manifesto-grid,
.horizon-theme .horizon-services-intro,
.horizon-theme .horizon-review-grid,
.horizon-theme .horizon-office-grid,
.horizon-theme .horizon-faq-grid,
.horizon-theme .horizon-page-grid {
        grid-template-columns: 1fr;
    }

    .horizon-theme .horizon-hero-stage {
        min-height: 650px;
        max-width: 650px;
    }

    .horizon-theme .horizon-pathway-rail {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .horizon-theme .horizon-pathway-rail a {
        border-bottom: 1px solid rgba(48, 76, 162, .09);
    }

    .horizon-theme .horizon-principles {
        grid-column: auto;
    }

    .horizon-theme .horizon-director-shell {
        grid-template-columns: 1fr 1fr;
    }

    .horizon-theme .horizon-service-item,
.horizon-theme .horizon-service-item.service-card-featured,
.horizon-theme .horizon-service-item:nth-child(6),
.horizon-theme .horizon-service-item:nth-child(7) {
        grid-column: span 6;
        grid-row: auto;
    }

    .horizon-theme .service-card-featured .service-card {
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 225px 1fr;
    }

    .horizon-theme .service-card-featured .service-card-image {
        min-height: 0;
    }

    .horizon-theme .service-card-featured .service-card-image img {
        border-radius: 18px 18px 0 0;
    }

    .horizon-theme .service-card-featured .service-card-body {
        display: block;
        padding: 1.45rem;
    }

    .horizon-theme .service-card-featured .service-card-body h3 {
        font-size: 1.35rem;
    }

    .horizon-theme .horizon-process-lead {
        grid-template-columns: 1fr;
    }

    .horizon-theme .horizon-process {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 2rem 0;
    }

    .horizon-theme .horizon-process::before {
        display: none;
    }

    .horizon-theme .horizon-review-heading,
.horizon-theme .horizon-faq-intro {
        position: static;
    }

    .horizon-theme .horizon-office-map {
        min-height: 450px;
    }

    .horizon-theme .horizon-page-grid {
        gap: 3rem;
    }

    .horizon-theme .horizon-page-visual {
        min-height: 420px;
        max-width: 700px;
    }

    .horizon-theme .horizon-page-visual > img {
        min-height: 420px;
    }

    .horizon-theme .horizon-footer-intro {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .horizon-theme .horizon-about-story-grid,
.horizon-theme .horizon-service-overview-grid,
.horizon-theme .horizon-service-value-grid,
.horizon-theme .horizon-post-visa-grid,
.horizon-theme .horizon-contact-booking-grid,
.horizon-theme .horizon-booking-grid,
.horizon-theme .horizon-evidence-grid,
.horizon-theme .horizon-help-grid {
        grid-template-columns: 1fr;
    }

    .horizon-theme .horizon-contact-intro,
.horizon-theme .horizon-booking-intro,
.horizon-theme .horizon-help-intro {
        position: static;
    }

    .horizon-theme .footer-main {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .horizon-theme .horizon-contact-bar {
        padding-bottom: .3rem;
    }

    .horizon-theme .horizon-contact-bar .contact-cluster {
        justify-content: center;
        gap: .65rem;
        width: 100%;
        font-size: 1.1rem;
    }

    .horizon-theme .horizon-navbar .container {
        border-radius: 14px;
    }

    .horizon-theme .horizon-brand .site-logo-mark {
        width: 230px;
        height: 64px;
    }

    .horizon-theme .horizon-home-hero {
        padding: 4rem 0 5rem;
    }

    .horizon-theme .horizon-home-hero::before {
        width: 29rem;
        height: 29rem;
    }

    .horizon-theme .horizon-hero-copy h1 {
        font-size: clamp(4rem, 17vw, 4rem);
        line-height: .9;
    }

    .horizon-theme .horizon-hero-overline {
        flex-wrap: wrap;
    }

    .horizon-theme .horizon-hero-proof {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .horizon-theme .horizon-hero-proof div {
        min-height: 0;
        padding: .75rem .6rem;
    }

    .horizon-theme .horizon-hero-proof strong {
        margin-bottom: .3rem;
        font-size: 1.2rem;
    }

    .horizon-theme .horizon-hero-proof span {
        font-size: 1.1rem;
    }

    .horizon-theme .horizon-hero-stage {
        min-height: 430px;
    }

    .horizon-theme .horizon-hero-image {
        inset: 8% 4% 8% 4%;
    }

    .horizon-theme .horizon-hero-stage::before {
        inset: 5% 0 4%;
    }

    .horizon-theme .horizon-hero-logo {
        top: 1rem;
        right: 0;
        width: 165px;
    }

    .horizon-theme .horizon-profile-card {
        right: 0;
        bottom: 1rem;
        width: 210px;
    }

    .horizon-theme .horizon-route-card {
        display: none;
    }

    .horizon-theme .horizon-pathway-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: .5rem;
    }

    .horizon-theme .horizon-pathway-heading p {
        text-align: left;
    }

    .horizon-theme .horizon-pathway-rail {
        grid-template-columns: 1fr;
        border-radius: 17px;
    }

    .horizon-theme .horizon-pathway-rail a {
        min-height: 115px;
        border-right: 0;
    }

    .horizon-theme .horizon-pathway-rail b {
        margin-bottom: 1rem;
    }

    .horizon-theme .horizon-manifesto-title h2,
.horizon-theme .horizon-services-intro h2,
.horizon-theme .horizon-process-lead h2,
.horizon-theme .horizon-review-heading h2,
.horizon-theme .horizon-office-copy h2,
.horizon-theme .horizon-faq-intro h2 {
        font-size: 3.2rem;
    }

    .horizon-theme .horizon-principles {
        grid-template-columns: 1fr;
    }

    .horizon-theme .horizon-principles article,
.horizon-theme .horizon-principles article + article {
        padding: 1.5rem 0;
        border-right: 0;
        border-bottom: 1px solid rgba(42, 71, 157, .1);
    }

    .horizon-theme .horizon-director-shell {
        grid-template-columns: 1fr;
    }

    .horizon-theme .horizon-director-heading {
        display: block;
    }

    .horizon-theme .horizon-director-heading h2 {
        margin-top: 1rem;
        font-size: 3.2rem;
    }

    .horizon-theme .horizon-director-portrait,
.horizon-theme .horizon-director-portrait > img {
        min-height: 440px;
    }

    .horizon-theme .horizon-director-portrait {
        border-radius: 150px 150px 20px 20px;
    }

    .horizon-theme .horizon-director-shell .director-copy h3 {
        font-size: 2.6rem;
    }

    .horizon-theme .horizon-service-item,
.horizon-theme .horizon-service-item.service-card-featured,
.horizon-theme .horizon-service-item:nth-child(6),
.horizon-theme .horizon-service-item:nth-child(7) {
        grid-column: span 12;
    }

    .horizon-theme .horizon-process {
        grid-template-columns: 1fr;
    }

    .horizon-theme .horizon-process .process-card {
        padding: 0 0 1.5rem;
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .16);
    }

    .horizon-theme .horizon-review-list article {
        grid-template-columns: 35px 1fr;
    }

    .horizon-theme .horizon-review-list article > div {
        grid-column: 2;
    }

    .horizon-theme .horizon-review-list article > p {
        font-size: 1.3rem;
    }

    .horizon-theme .horizon-office-grid {
        border-radius: 18px;
    }

    .horizon-theme .horizon-office-map {
        min-height: 330px;
    }

    .horizon-theme .horizon-office-copy {
        padding: 2rem 1.25rem;
    }

    .horizon-theme .horizon-page-intro {
        padding: 4rem 0;
    }

    .horizon-theme .horizon-page-intro .page-hero-content h1 {
        font-size: 3.9rem;
    }

    .horizon-theme .horizon-page-actions {
        align-items: flex-start;
        flex-direction: column;
        gap: 1rem;
    }

    .horizon-theme .horizon-page-visual,
.horizon-theme .horizon-page-visual > img {
        min-height: 340px;
    }

    .horizon-theme .horizon-page-visual {
        border-radius: 42% 42% 18px 18px;
    }

    .horizon-theme .horizon-footer-intro {
        margin-bottom: 3.5rem;
    }

    .horizon-theme .horizon-values-grid,
.horizon-theme .horizon-benefit-grid {
        grid-template-columns: 1fr;
    }

    .horizon-theme .horizon-values-grid > div:nth-child(2),
.horizon-theme .horizon-values-grid > div:nth-child(5),
.horizon-theme .horizon-benefit-grid > div:nth-child(2),
.horizon-theme .horizon-benefit-grid > div:nth-child(5) {
        transform: none;
    }

    .horizon-theme .horizon-about-story-image .image-frame,
.horizon-theme .horizon-service-overview-image .image-frame,
.horizon-theme .horizon-post-visa-image .image-frame {
        border-radius: 120px 120px 18px 18px;
    }

    .horizon-theme .horizon-service-overview-image > span {
        right: .6rem;
    }

    .horizon-theme .footer-main {
        grid-template-columns: 1fr;
    }
}

.horizon-theme .horizon-services-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding-top: 6.5rem;
    background: radial-gradient(circle at 8% 0%, rgba(69, 159, 255, .3), transparent 27rem), radial-gradient(circle at 96% 18%, rgba(255, 127, 94, .22), transparent 27rem), linear-gradient(135deg, #101f53 0%, #28266f 48%, #54307e 100%) !important;
}

.horizon-theme .horizon-services-section::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    opacity: .28;
    background-image: linear-gradient(rgba(255, 255, 255, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .06) 1px, transparent 1px);
    background-size: 80px 80px;
    mask-image: linear-gradient(to bottom, #000, transparent 78%);
}

.horizon-theme .horizon-services-section::after {
    content: "";
    position: absolute;
    top: 3rem;
    right: -10rem;
    z-index: -1;
    width: 34rem;
    height: 34rem;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
    box-shadow: 0 0 0 4rem rgba(255, 255, 255, .025), 0 0 0 8rem rgba(255, 255, 255, .018);
}

.horizon-theme .horizon-services-intro {
    position: relative;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
    gap: 5rem;
    align-items: center;
    margin-bottom: 4rem;
}

.horizon-theme .horizon-services-title {
    position: relative;
    padding-left: 4.5rem;
}

.horizon-theme .horizon-services-title .eyebrow {
    border-color: rgba(255, 255, 255, .18);
    color: #ffd781;
    background: rgba(255, 255, 255, .08);
}

.horizon-theme .horizon-section-number {
    position: absolute;
    top: 3.1rem;
    left: 0;
    color: rgba(255, 255, 255, .24);
    font-family: "EB Garamond", Georgia, serif;
    font-size: 1.4rem;
}

.horizon-theme .horizon-section-number::after {
    content: "";
    display: block;
    width: 1px;
    height: 90px;
    margin: .8rem auto 0;
    background: linear-gradient(to bottom, #ffcb70, transparent);
}

.horizon-theme .horizon-services-intro h2 {
    max-width: 780px;
    margin: 1.1rem 0 0;
    color: var(--horizon-white);
    font-size: clamp(3.6rem, 5.2vw, 4rem);
    line-height: .92;
}

.horizon-theme .horizon-services-intro h2 em {
    color: transparent;
    background: linear-gradient(90deg, #ffd875, #ff8a69 72%);
    background-clip: text;
    -webkit-background-clip: text;
    font-style: normal;
}

.horizon-theme .horizon-services-guide {
    display: grid;
    grid-template-columns: 118px 1fr;
    gap: 1.5rem;
    align-items: center;
    padding: 1.25rem;
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 22px;
    background: rgba(255, 255, 255, .075);
    box-shadow: 0 24px 60px rgba(8, 14, 54, .18);
    backdrop-filter: blur(16px);
}

.horizon-theme .horizon-services-guide p {
    margin: 0 0 1rem;
    color: rgba(255, 255, 255, .75);
    font-size: 1.1rem;
}

.horizon-theme .horizon-services-guide .horizon-text-action {
    color: #ffe09b;
    font-size: 1.1rem;
}

.horizon-theme .horizon-pathway-compass {
    position: relative;
    display: flex;
    width: 108px;
    height: 108px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, .12) 0 4px, transparent 5px), rgba(255, 255, 255, .05);
}

.horizon-theme .horizon-pathway-compass::before,
.horizon-theme .horizon-pathway-compass::after {
    content: "";
    position: absolute;
    background: rgba(255, 255, 255, .16);
}

.horizon-theme .horizon-pathway-compass::before {
    width: 1px;
    height: 100%;
}

.horizon-theme .horizon-pathway-compass::after {
    width: 100%;
    height: 1px;
}

.horizon-theme .horizon-pathway-compass span {
    position: absolute;
    top: .45rem;
    color: #ffd781;
    font-size: 1.1rem;
    font-weight: 800;
}

.horizon-theme .horizon-pathway-compass i {
    position: absolute;
    width: 22px;
    height: 46px;
    clip-path: polygon(50% 0, 100% 100%, 50% 75%, 0 100%);
    background: linear-gradient(to bottom, #ffcc70 0 50%, #ff8268 50%);
    transform: rotate(32deg);
}

.horizon-theme .horizon-pathway-compass b {
    position: absolute;
    bottom: .42rem;
    color: rgba(255, 255, 255, .65);
    font-size: 1.1rem;
    letter-spacing: .12em;
}

.horizon-theme .horizon-service-library {
    position: relative;
}

.horizon-theme .horizon-services-section .service-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .2);
    color: var(--horizon-white);
    background: #17275b;
    box-shadow: 0 26px 70px rgba(5, 11, 43, .28);
}

.horizon-theme .horizon-services-section .service-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(to top, rgba(8, 14, 42, .97) 0%, rgba(14, 23, 65, .72) 45%, rgba(9, 17, 52, .08) 78%), linear-gradient(135deg, rgba(20, 48, 127, .28), transparent);
}

.horizon-theme .horizon-services-section .service-card::after {
    content: "";
    position: absolute;
    top: -8rem;
    right: -8rem;
    z-index: 1;
    width: 18rem;
    height: 18rem;
    border-radius: 50%;
    opacity: .65;
    transition: transform .45s ease;
}

.horizon-theme .horizon-services-section .service-card-tone-1 .service-card::after {
    background: radial-gradient(circle, rgba(62, 139, 255, .72), transparent 68%);
}

.horizon-theme .horizon-services-section .service-card-tone-2 .service-card::after {
    background: radial-gradient(circle, rgba(255, 177, 91, .76), transparent 68%);
}

.horizon-theme .horizon-services-section .service-card-tone-3 .service-card::after {
    background: radial-gradient(circle, rgba(134, 80, 222, .78), transparent 68%);
}

.horizon-theme .horizon-services-section .service-card-tone-4 .service-card::after {
    background: radial-gradient(circle, rgba(255, 106, 98, .72), transparent 68%);
}

.horizon-theme .horizon-services-section .service-card-tone-5 .service-card::after {
    background: radial-gradient(circle, rgba(49, 196, 172, .66), transparent 68%);
}

.horizon-theme .horizon-services-section .service-card-image {
    position: absolute;
    inset: 0;
    height: 100%;
    border-radius: inherit;
}

.horizon-theme .horizon-services-section .service-card-image::after {
    display: none;
}

.horizon-theme .horizon-services-section .service-card-image img {
    width: 100%;
    height: 100%;
    border-radius: inherit !important;
    object-fit: cover;
    transition: transform .75s cubic-bezier(.2, .7, .2, 1), filter .45s ease;
}

.horizon-theme .horizon-services-section .service-card-body,
.horizon-theme .horizon-services-section .service-card-featured .service-card-body {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    display: block;
}

.horizon-theme .service-card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.horizon-theme .horizon-services-section .service-index {
    margin: 0;
    color: #ffd681;
    font-size: 1.1rem;
    letter-spacing: .12em;
}

.horizon-theme .service-category {
    padding: .38rem .65rem;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 999px;
    color: rgba(255, 255, 255, .82);
    background: rgba(255, 255, 255, .09);
    font-size: 1.1rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.horizon-theme .horizon-services-section .service-card h3,
.horizon-theme .horizon-services-section .service-card-featured .service-card-body h3 {
    margin: 0 0 .65rem;
}

.horizon-theme .horizon-services-section .service-card p {
    max-width: 650px;
    color: rgba(255, 255, 255, .72);
}

.horizon-theme .horizon-services-section .service-card .text-link {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: #ffdc91;
    letter-spacing: .12em;
}

.horizon-theme .horizon-services-section .service-card .text-link::after {
    content: "↗";
    display: inline-flex;
    width: 28px;
    height: 28px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 220, 145, .5);
    border-radius: 50%;
}

.horizon-theme .horizon-services-section .service-card:hover {
    transform: translateY(-7px);
    border-color: rgba(255, 216, 135, .45);
    box-shadow: 0 36px 85px rgba(5, 11, 43, .4);
}

.horizon-theme .horizon-services-section .service-card:hover .service-card-image img {
    filter: saturate(1.08);
    transform: scale(1.055);
}

.horizon-theme .horizon-services-section .service-card:hover::after {
    transform: scale(1.22) translate(-1rem, 1rem);
}

@media (max-width: 991.98px) {
    .horizon-theme .horizon-services-intro {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }

    .horizon-theme .horizon-services-guide {
        max-width: 650px;
    }

    .horizon-theme .horizon-services-section .horizon-service-item:nth-child(1) {
        grid-column: span 12;
        min-height: 520px;
    }

    .horizon-theme .horizon-services-section .horizon-service-item:nth-child(n/**/+2) {
        grid-column: span 6;
        min-height: 410px;
    }
}

@media (max-width: 575.98px) {
    .horizon-theme .horizon-services-section {
        padding-top: 5rem;
    }

    .horizon-theme .horizon-services-title {
        padding-left: 0;
    }

    .horizon-theme .horizon-section-number {
        display: none;
    }

    .horizon-theme .horizon-services-intro h2 {
        font-size: 3.15rem;
    }

    .horizon-theme .horizon-services-guide {
        grid-template-columns: 72px 1fr;
        padding: 1rem;
    }

    .horizon-theme .horizon-pathway-compass {
        width: 68px;
        height: 68px;
    }

    .horizon-theme .horizon-pathway-compass i {
        width: 14px;
        height: 30px;
    }

    .horizon-theme .horizon-service-library {
        gap: 1rem;
    }

    .horizon-theme .horizon-services-section .horizon-service-item:nth-child(1) {
        grid-column: span 12;
    }

    .horizon-theme .horizon-services-section .horizon-service-item:nth-child(n/**/+2) {
        grid-column: span 12;
        min-height: 420px;
    }

    .horizon-theme .horizon-services-section .horizon-service-item:nth-child(1) {
        min-height: 490px;
    }

    .horizon-theme .horizon-services-section .service-card-featured .service-card-body {
        padding: 1.6rem;
    }

    .horizon-theme .horizon-services-section .horizon-service-item:nth-child(1) .service-card h3 {
        max-width: 100%;
        font-size: 1.4rem;
    }
}

.horizon-theme .australian-heritage-banner {
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: var(--horizon-white);
    background-image: linear-gradient(90deg, rgba(8, 20, 57, .97) 0%, rgba(14, 36, 83, .9) 42%, rgba(17, 38, 77, .46) 70%, rgba(10, 24, 57, .25) 100%), radial-gradient(circle at 19% 18%, rgba(255, 194, 99, .28), transparent 24rem), var(--heritage-banner) !important;
    background-position: center, center, center 54% !important;
    background-size: cover !important;
}

.horizon-theme .australian-heritage-banner::before {
    content: "";
    position: absolute;
    inset: auto 0 0;
    z-index: -1;
    height: 38%;
    background: linear-gradient(to top, rgba(8, 20, 54, .66), transparent);
}

.horizon-theme .horizon-heritage-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(330px, .55fr);
    gap: clamp(3rem, 8vw, 8rem);
    align-items: end;
}

.horizon-theme .horizon-heritage-grid-solo {
    grid-template-columns: minmax(0, 1fr);
}

.horizon-theme .horizon-heritage-grid-solo .page-hero-content {
    max-width: 900px;
}

.horizon-theme .australian-heritage-banner .page-hero-content {
    max-width: 850px;
    padding: 1rem 0;
}

.horizon-theme .australian-heritage-banner .page-hero-content .eyebrow {
    padding: .52rem .85rem;
    border: 1px solid rgba(255, 218, 143, .34);
    border-radius: 999px;
    color: #ffda8b;
    background: rgba(8, 27, 68, .36);
    backdrop-filter: blur(10px);
}

.horizon-theme .australian-heritage-banner .page-hero-content h1 {
    color: var(--horizon-white);
    text-shadow: 0 18px 48px rgba(1, 9, 34, .32);
}

.horizon-theme .australian-heritage-banner .page-hero-content p {
    margin: 0;
    color: rgba(255, 255, 255, .8);
}

.horizon-theme .australian-heritage-banner .horizon-page-actions {
    flex-wrap: wrap;
}

.horizon-theme .australian-heritage-banner .horizon-page-actions a {
    display: inline-flex;
    align-items: center;
    gap: .75rem;
    padding: .82rem 1.05rem;
    border: 1px solid rgba(255, 213, 132, .42);
    border-radius: 999px;
    color: #ffdc91;
    background: rgba(8, 28, 68, .44);
    backdrop-filter: blur(12px);
}

.horizon-theme .australian-heritage-banner .horizon-page-actions small {
    color: rgba(255, 255, 255, .7);
    letter-spacing: .04em;
}

.horizon-theme .heritage-banner-aside {
    display: grid;
    gap: 1rem;
    align-self: end;
}

.horizon-theme .heritage-location {
    padding: 1.25rem 1.35rem;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 18px;
    color: var(--horizon-white);
    background: radial-gradient(circle at 100% 0%, rgba(255, 195, 97, .2), transparent 12rem), rgba(10, 30, 70, .48);
    box-shadow: 0 20px 48px rgba(2, 10, 37, .18);
    backdrop-filter: blur(16px);
}

.horizon-theme .heritage-location span,
.horizon-theme .heritage-location strong,
.horizon-theme .heritage-location small {
    display: block;
}

.horizon-theme .heritage-location span,
.horizon-theme .heritage-page-card span {
    color: #ffd681;
    font-size: 1.1rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.horizon-theme .heritage-location strong {
    margin: .32rem 0 .15rem;
    font-family: "EB Garamond", Georgia, serif;
    font-size: 1.65rem;
    font-weight: 600;
}

.horizon-theme .heritage-location small {
    color: rgba(255, 255, 255, .68);
}

.horizon-theme .heritage-page-card {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 1rem;
    align-items: center;
    padding: .65rem;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 18px;
    color: var(--horizon-white);
    background: rgba(255, 255, 255, .1);
    box-shadow: 0 20px 48px rgba(2, 10, 37, .16);
    backdrop-filter: blur(16px);
}

.horizon-theme .heritage-page-card img {
    width: 100px;
    height: 80px;
    border-radius: 12px;
    object-fit: cover;
}

.horizon-theme .heritage-page-card div {
    min-width: 0;
}

.horizon-theme .heritage-page-card strong {
    display: block;
    margin-top: .3rem;
    overflow: hidden;
    color: var(--horizon-white);
    font-family: "EB Garamond", Georgia, serif;
    font-size: 1.1rem;
    font-weight: 600;
    line-height: 1.1;
    text-overflow: ellipsis;
}

.horizon-theme .heritage-line-art {
    position: absolute;
    top: -8rem;
    right: -7rem;
    z-index: -1;
    width: 34rem;
    height: 34rem;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
}

.horizon-theme .heritage-line-art i {
    position: absolute;
    inset: 12%;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 50%;
}

.horizon-theme .heritage-line-art i:nth-child(2) {
    inset: 25%;
}

.horizon-theme .heritage-line-art i:nth-child(3) {
    inset: 38%;
}

@media (max-width: 991.98px) {
    .horizon-theme .australian-heritage-banner {
        min-height: 650px;
        background-position: center, center, 58% center !important;
    }

    .horizon-theme .horizon-heritage-grid {
        grid-template-columns: 1fr;
        gap: 2.5rem;
    }

    .horizon-theme .heritage-banner-aside {
        grid-template-columns: 1fr 1fr;
        max-width: 720px;
    }
}

@media (max-width: 575.98px) {
    .horizon-theme .australian-heritage-banner {
        min-height: 610px;
        padding: 4.25rem 0 4.75rem;
        background-image: linear-gradient(90deg, rgba(8, 20, 57, .96), rgba(12, 32, 74, .72)), var(--heritage-banner) !important;
        background-position: center, 59% center !important;
    }

    .horizon-theme .australian-heritage-banner .page-hero-content h1 {
        font-size: clamp(3.5rem, 15vw, 4rem);
    }

    .horizon-theme .australian-heritage-banner .page-hero-content p {
        font-size: 1.1rem;
    }

    .horizon-theme .australian-heritage-banner .horizon-page-actions {
        gap: .85rem;
    }

    .horizon-theme .australian-heritage-banner .horizon-page-actions small {
        width: 100%;
    }

    .horizon-theme .heritage-banner-aside {
        grid-template-columns: 1fr;
    }

    .horizon-theme .heritage-page-card {
        display: none;
    }

    .horizon-theme .heritage-location {
        max-width: 280px;
    }
}

.horizon-theme .site-header .container-fluid {
    max-width: 100%;
}

.horizon-theme .horizon-top-location {
    font-size: 1.1rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: rgba(12, 31, 57, .78);
}

.horizon-theme .horizon-hero-logo-stage {
    min-height: 560px;
    display: grid;
    place-items: center;
    overflow: hidden;
}

.horizon-theme .horizon-hero-logo-stage::before {
    content: "";
    position: absolute;
    width: min(92%, 520px);
    aspect-ratio: 1;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255,255,255,.95), rgba(206,159,80,.18) 48%, rgba(12,31,57,.06) 70%, transparent 72%);
    box-shadow: 0 45px 120px rgba(12,31,57,.16);
}

.horizon-theme .horizon-hero-brand-orb {
    position: relative;
    z-index: 2;
    width: min(72%, 390px);
    aspect-ratio: 1;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(206,159,80,.25);
    box-shadow: inset 0 0 0 16px rgba(255,255,255,.35), 0 40px 100px rgba(12,31,57,.12);
}

.horizon-theme .horizon-hero-brand-orb img {
    width: 78%;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 18px 30px rgba(12,31,57,.14));
}

.horizon-theme .brand-orb-ring {
    position: absolute;
    inset: -22px;
    border: 1px solid rgba(206,159,80,.38);
    border-radius: 50%;
}

.horizon-theme .brand-orb-ring.ring-two {
    inset: 22px;
    border-style: dashed;
    opacity: .65;
}

.horizon-theme .horizon-values-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.horizon-theme .horizon-values-grid > div {
    display: flex;
}

.horizon-theme .horizon-values-grid .lux-card {
    width: 100%;
}

.horizon-theme .horizon-office-presence-row h2 {
    margin-bottom: 0;
}

.horizon-theme .horizon-office-presence-row p {
    margin: 0;
    font-size: 1.1rem;
}

.horizon-theme .office-presence-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.horizon-theme .office-presence-pills span {
    border: 1px solid rgba(206,159,80,.35);
    border-radius: 999px;
    padding: 8px 14px;
    background: rgba(255,255,255,.78);
    font-weight: 700;
    color: var(--navy);
}

@media (max-width: 991.98px) {
    .horizon-theme .horizon-values-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .horizon-theme .horizon-hero-logo-stage {
        min-height: 420px;
    }
}

@media (max-width: 575.98px) {
    .horizon-theme .horizon-values-grid {
        grid-template-columns: 1fr;
    }

    .horizon-theme .hero-title-two-line {
        font-size: clamp(2.25rem, 12vw, 3.1rem);
    }
}

.horizon-theme .navbar-nav .nav-link,
.horizon-theme .luxury-navbar .nav-link,
.horizon-theme .nav-cta {
    letter-spacing: .01em;
}

.horizon-theme .horizon-top-location,
.horizon-theme .horizon-availability {
    display: none !important;
}

.horizon-theme p,
.horizon-theme .about-content p,
.horizon-theme .horizon-manifesto-copy p,
.horizon-theme .horizon-service-value-copy p,
.horizon-theme .horizon-post-visa-copy p {
    text-align: justify;
    text-justify: inter-word;
}

.horizon-theme .horizon-hero-copy > p {
    text-justify: inter-word;
}

.horizon-theme .horizon-services-guide p,
.horizon-theme .service-card p {
    text-align: justify;
    text-justify: inter-word;
}

.horizon-theme .horizon-principles {
    border-top: 1px solid rgba(35, 57, 126, .12);
    border-bottom: 1px solid rgba(35, 57, 126, .12);
}

.horizon-theme .horizon-principles article {
    padding: 2.1rem 2.2rem;
}

.horizon-theme .horizon-principles article + article {
    border-left: 1px solid rgba(35, 57, 126, .14);
}

.horizon-theme .horizon-principles h3 {
    font-size: clamp(1.9rem, 2.2vw, 2.55rem);
}

.horizon-theme .horizon-principles p {
    min-height: 42px;
    margin-bottom: 0;
}

.horizon-theme .horizon-hero-logo-stage .horizon-profile-card {
    display: none !important;
}

.horizon-theme .horizon-hero-logo-stage .horizon-hero-brand-orb {
    width: min(80%, 460px);
}

.horizon-theme .horizon-hero-logo-stage .horizon-route-card {
    left: 50%;
    bottom: 2.4rem;
    transform: translateX(-50%);
    gap: .9rem;
    padding: 1rem 1.45rem;
    border-color: rgba(255, 255, 255, .32);
    color: #ffffff;
    background: linear-gradient(135deg, #072f73 0%, #114db0 55%, #253a92 100%);
    box-shadow: 0 24px 60px rgba(4, 31, 83, .32);
    font-size: 1.1rem;
    letter-spacing: .06em;
    white-space: nowrap;
}

.horizon-theme .horizon-hero-logo-stage .horizon-route-card i {
    width: 38px;
    height: 2px;
    background: linear-gradient(90deg, rgba(255,255,255,.35), #d6a24c, rgba(255,255,255,.35));
}

.horizon-theme .horizon-services-title .eyebrow {
    letter-spacing: .14em;
}

.horizon-theme .horizon-pathway-rail a {
    min-height: 150px;
}

.horizon-theme .horizon-pathway-rail span {
    font-size: 1.22rem;
    line-height: 1.15;
}

@media (max-width: 1199.98px) {
    .horizon-theme .horizon-services-section .horizon-service-library,
.horizon-theme .horizon-pathway-rail {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .horizon-theme .navbar-nav .nav-link,
.horizon-theme .luxury-navbar .nav-link,
.horizon-theme .nav-cta {
        font-size: 1.1rem;
    }

    .horizon-theme .horizon-contact-bar {
        justify-content: center;
    }

    .horizon-theme .horizon-principles article + article {
        border-left: 0;
        border-top: 1px solid rgba(35, 57, 126, .14);
    }

    .horizon-theme .horizon-services-section .horizon-service-library,
.horizon-theme .horizon-pathway-rail {
        grid-template-columns: 1fr;
    }

    .horizon-theme .horizon-hero-logo-stage .horizon-route-card {
        width: calc(100% - 32px);
        justify-content: center;
        font-size: 1.1rem;
        gap: .5rem;
    }

    .horizon-theme .horizon-hero-logo-stage .horizon-route-card i {
        width: 22px;
    }
}

@media (max-width: 991.98px) {
    .horizon-theme .horizon-navbar > .container-fluid {
        min-height: 76px;
    }
}

.horizon-theme .horizon-contact-bar {
    letter-spacing: .01em;
}

.horizon-theme .horizon-services-hero-page .strategy-card-stage {
    overflow: visible;
}

.horizon-theme .horizon-services-hero-page .strategy-card-stage::before,
.horizon-theme .horizon-services-hero-page .strategy-card-stage .horizon-orbit,
.horizon-theme .horizon-services-hero-page .strategy-card-stage .horizon-route-card,
.horizon-theme .horizon-services-hero-page .strategy-card-stage .horizon-hero-brand-orb,
.horizon-theme .horizon-services-hero-page .strategy-card-stage .brand-orb-ring {
    display: none !important;
}

.horizon-theme .strategy-card-line {
    height: 1px;
    width: 100%;
}

.horizon-theme .strategy-card-overline {
    font-weight: 900;
    text-transform: uppercase;
}

.horizon-theme .strategy-visual-card h2 {
    font-family: "EB Garamond", Georgia, serif;
    font-weight: 900;
}

.horizon-theme .strategy-visual-card p {
    font-weight: 600;
    text-align: left;
}

.horizon-theme .strategy-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.horizon-theme .strategy-steps article {
    min-width: 0;
}

.horizon-theme .strategy-steps b,
.horizon-theme .strategy-steps strong,
.horizon-theme .strategy-steps small {
    display: block;
}

.horizon-theme .strategy-steps b,
.horizon-theme .strategy-steps strong {
    font-weight: 900;
}

.horizon-theme .strategy-steps small {
    margin-top: .25rem;
    font-weight: 600;
    line-height: 1.35;
}

.horizon-theme .strategy-badges {
    display: flex;
    flex-wrap: wrap;
}

.horizon-theme .strategy-badges span {
    font-weight: 800;
}

@media (max-width: 991.98px) {
    .horizon-theme .horizon-contact-bar {
        flex-direction: column;
        gap: .35rem;
        text-align: center;
    }

    .horizon-theme .horizon-services-hero-page .strategy-card-stage {
        min-height: auto;
        padding: 1rem;
    }

    .horizon-theme .strategy-visual-card {
        min-height: auto;
    }
}

@media (max-width: 575.98px) {
    .horizon-theme .strategy-steps {
        grid-template-columns: 1fr;
    }

    .horizon-theme .strategy-logo-panel {
        min-height: 110px;
    }
}

.horizon-theme .horizon-contact-bar {
    flex-wrap: nowrap !important;
    width: 100%;
}

.horizon-theme .horizon-contact-bar .contact-cluster {
    flex-direction: row !important;
    justify-content: flex-end !important;
}

@media (max-width: 991.98px) {
    .horizon-theme .horizon-contact-bar {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: .5rem 1rem !important;
        text-align: center;
    }
}

@media (min-width: 992px) {
    .horizon-theme .horizon-contact-bar {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        min-height: 42px !important;
        padding: 0 0.4rem !important;
        line-height: 1 !important;
    }

    .horizon-theme .horizon-contact-bar .top-location-left,
.horizon-theme .horizon-contact-bar .contact-cluster,
.horizon-theme .horizon-contact-bar .contact-cluster a {
        height: 42px !important;
        display: inline-flex !important;
        align-items: center !important;
        line-height: 1 !important;
        margin: 0 !important;
        padding: 0 !important;
        vertical-align: middle !important;
    }

    .horizon-theme .horizon-contact-bar .contact-cluster {
        gap: 1.7rem !important;
    }

    .horizon-theme .horizon-navbar {
        padding: 0.55rem 0 0.65rem !important;
    }

    .horizon-theme .horizon-navbar > .container-fluid {
        display: flex !important;
        align-items: center !important;
        min-height: 112px !important;
        padding-top: 0.6rem !important;
        padding-bottom: 0.6rem !important;
    }

    .horizon-theme .horizon-brand,
.horizon-theme .navbar-brand {
        height: 88px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .horizon-theme .site-logo-mark {
        width: 300px !important;
        height: 78px !important;
        display: block !important;
        object-fit: contain !important;
    }

    .horizon-theme .navbar-collapse {
        align-items: center !important;
        min-height: 88px !important;
    }

    .horizon-theme .navbar-nav {
        align-items: center !important;
        min-height: 88px !important;
        gap: 0.28rem !important;
    }

    .horizon-theme .navbar-nav .nav-item {
        height: 58px !important;
        display: inline-flex !important;
        align-items: center !important;
    }

    .horizon-theme .navbar-nav .nav-link,
.horizon-theme .luxury-navbar .nav-link {
        height: 58px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 1rem !important;
        font-size: 1.28rem !important;
        line-height: 1 !important;
    }

    .horizon-theme .nav-cta {
        height: 58px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: .7rem !important;
        padding: 0 1.45rem !important;
        font-size: 1.15rem !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }
}

.horizon-theme .horizon-values-grid,
.horizon-theme .horizon-principles,
.horizon-theme .strategy-steps {
    align-items: stretch !important;
}

.horizon-theme .horizon-values-grid > div:nth-child(2),
.horizon-theme .horizon-values-grid > div:nth-child(5),
.horizon-theme .horizon-benefit-grid > div:nth-child(2),
.horizon-theme .horizon-benefit-grid > div:nth-child(5) {
    transform: none !important;
}

.horizon-theme .horizon-values-grid > div,
.horizon-theme .horizon-principles article,
.horizon-theme .strategy-steps article {
    height: 100% !important;
}

.horizon-theme .horizon-values-grid .lux-card {
    min-height: 260px !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
}

.horizon-theme .horizon-principles article {
    min-height: 190px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

.horizon-theme .site-header {
    z-index: 1050;
}

@media (min-width: 992px) {
    .horizon-theme .horizon-contact-bar {
        height: 38px !important;
        min-height: 38px !important;
        padding: 0 .4rem !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        line-height: 1 !important;
        font-size: 1.1rem !important;
        font-weight: 850 !important;
    }

    .horizon-theme .horizon-contact-bar .top-location-left,
.horizon-theme .horizon-contact-bar .contact-cluster,
.horizon-theme .horizon-contact-bar .contact-cluster a {
        height: 38px !important;
        display: inline-flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1 !important;
        font-size: 1.1rem !important;
        font-weight: 850 !important;
        white-space: nowrap !important;
    }

    .horizon-theme .horizon-navbar {
        padding: .45rem 0 .55rem !important;
    }

    .horizon-theme .horizon-navbar > .container-fluid {
        min-height: 104px !important;
        display: flex !important;
        align-items: center !important;
        padding-top: .5rem !important;
        padding-bottom: .5rem !important;
    }

    .horizon-theme .horizon-brand,
.horizon-theme .navbar-brand {
        height: 82px !important;
        display: inline-flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .horizon-theme .site-logo-mark {
        width: 285px !important;
        height: 76px !important;
        object-fit: contain !important;
    }

    .horizon-theme .navbar-collapse,
.horizon-theme .navbar-nav {
        min-height: 82px !important;
        align-items: center !important;
    }

    .horizon-theme .navbar-nav .nav-item {
        height: 56px !important;
        display: inline-flex !important;
        align-items: center !important;
    }

    .horizon-theme .navbar-nav .nav-link,
.horizon-theme .luxury-navbar .nav-link {
        height: 56px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 .95rem !important;
        font-size: 1.34rem !important;
        font-weight: 900 !important;
        line-height: 1 !important;
    }

    .horizon-theme .nav-cta {
        height: 56px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 1.4rem !important;
        font-size: 1.12rem !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }
}

.horizon-theme .horizon-home-hero {
    padding: clamp(2.6rem, 4vw, 4rem) 0 clamp(3.2rem, 5vw, 5rem) !important;
}

.horizon-theme .hero-title-two-line,
.horizon-theme .horizon-hero-copy h1 {
    margin-bottom: 1.05rem !important;
}

.horizon-theme .australian-heritage-banner,
.horizon-theme .page-hero {
    min-height: 360px !important;
    padding: 3.4rem 0 3.6rem !important;
}

.horizon-theme .australian-heritage-banner .page-hero-content h1,
.horizon-theme .page-hero h1 {
    max-width: 860px !important;
    margin: .85rem 0 .9rem !important;
    font-size: clamp(3rem, 4.3vw, 4rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.035em !important;
}

.horizon-theme .australian-heritage-banner .page-hero-content p,
.horizon-theme .page-hero p {
    max-width: 820px !important;
    font-size: clamp(1.1rem, 1.1vw, 1.12rem) !important;
    line-height: 1.65 !important;
}

.horizon-theme .australian-heritage-banner .horizon-page-actions {
    margin-top: 1.25rem !important;
}

.horizon-theme .horizon-pathway-nav {
    padding-bottom: 4.25rem !important;
}

.horizon-theme .horizon-pathway-heading {
    align-items: flex-end !important;
    margin-bottom: 1.1rem !important;
}

.horizon-theme .horizon-pathway-image-rail a:hover {
    background: #ffffff !important;
    color: var(--horizon-ink) !important;
}

.horizon-theme .horizon-pathway-thumb {
    position: relative;
    margin: 0;
    overflow: hidden;
}

.horizon-theme .horizon-pathway-thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(8,20,57,.32), transparent 60%);
}

.horizon-theme .horizon-pathway-thumb img {
    transition: transform .45s ease, filter .45s ease;
}

.horizon-theme .horizon-pathway-image-rail a:hover .horizon-pathway-thumb img {
    transform: scale(1.06);
    filter: saturate(1.1);
}

.horizon-theme .horizon-pathway-image-rail b {
    font-weight: 900 !important;
}

.horizon-theme .horizon-pathway-image-rail i {
    right: 1rem !important;
    bottom: .9rem !important;
}

.horizon-theme .contact-booking-section {
    padding-top: clamp(3rem, 6vw, 5rem) !important;
}

.horizon-theme .horizon-contact-booking-grid {
    align-items: start !important;
}

.horizon-theme .booking-only-shell .form-shell-heading p {
    margin: .35rem 0 0;
    color: #667387;
    text-align: left !important;
}

.horizon-theme .site-footer {
    padding: clamp(3rem, 6vw, 4.5rem) 0 1.2rem !important;
    background: linear-gradient(135deg, #0b2345, #142d62 58%, #1c3d80) !important;
}

.horizon-theme .site-footer::before {
    opacity: .45;
}

.horizon-theme .footer-main {
    display: grid !important;
    grid-template-columns: 1.35fr .82fr 1fr 1.1fr !important;
    gap: clamp(1.4rem, 3vw, 3rem) !important;
    align-items: start !important;
}

.horizon-theme .footer-brand p {
    max-width: 420px;
    color: rgba(255,255,255,.76) !important;
    text-align: left !important;
}

.horizon-theme .horizon-footer-contact .footer-contact {
    margin-bottom: 0 !important;
}

.horizon-theme .newsletter-form {
    display: none !important;
}

.horizon-theme .footer-bottom {
    margin-top: 2.4rem !important;
    padding-top: 1.15rem !important;
    border-top: 1px solid rgba(255,255,255,.14) !important;
}

.horizon-theme .footer-bottom p {
    color: rgba(255,255,255,.68) !important;
    text-align: left !important;
}

@media (max-width: 1399.98px) {
    .horizon-theme .navbar-nav .nav-link,
.horizon-theme .luxury-navbar .nav-link {
        font-size: 1.2rem !important;
        padding-left: .75rem !important;
        padding-right: .75rem !important;
    }

    .horizon-theme .site-logo-mark {
        width: 250px !important;
    }
}

@media (max-width: 1199.98px) {
    .horizon-theme .horizon-pathway-image-rail,
.horizon-theme .horizon-pathway-rail {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .horizon-theme .horizon-hero-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 991.98px) {
    .horizon-theme .horizon-contact-bar {
        min-height: auto !important;
        padding: .35rem .4rem !important;
        gap: .45rem 1rem !important;
    }

    .horizon-theme .horizon-navbar > .container-fluid {
        min-height: 76px !important;
    }

    .horizon-theme .site-logo-mark {
        width: 210px !important;
        height: 62px !important;
    }

    .horizon-theme .horizon-pathway-heading {
        display: block !important;
    }

    .horizon-theme .horizon-pathway-heading p {
        margin-top: .35rem !important;
        text-align: left !important;
    }

    .horizon-theme .footer-main {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    .horizon-theme .horizon-pathway-image-rail,
.horizon-theme .horizon-pathway-rail,
.horizon-theme .footer-main {
        grid-template-columns: 1fr !important;
    }

    .horizon-theme .horizon-pathway-image-rail a {
        min-height: 230px !important;
    }

    .horizon-theme .horizon-pathway-thumb {
        height: 130px;
    }

    .horizon-theme .australian-heritage-banner,
.horizon-theme .page-hero {
        min-height: 310px !important;
        padding: 2.5rem 0 !important;
    }
}

.horizon-theme .horizon-header {
    padding-top: 0 !important;
    background: rgba(247, 250, 255, .97) !important;
    box-shadow: 0 10px 34px rgba(13, 34, 74, .08) !important;
}

.horizon-theme .horizon-contact-bar {
    height: 34px !important;
    min-height: 34px !important;
    padding: 0 .35rem !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 1rem !important;
    color: #34425e !important;
    font-size: 1.1rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

.horizon-theme .horizon-contact-bar .top-location-left,
.horizon-theme .horizon-contact-bar .contact-cluster,
.horizon-theme .horizon-contact-bar .contact-cluster a {
    height: 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #34425e !important;
    font-size: 1.1rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.horizon-theme .horizon-contact-bar .contact-cluster {
    gap: 1.5rem !important;
}

.horizon-theme .horizon-navbar {
    padding: .42rem 0 .48rem !important;
    background: rgba(246, 249, 255, .9) !important;
}

.horizon-theme .horizon-navbar > .container-fluid {
    min-height: 86px !important;
    padding: .42rem clamp(1.2rem, 3vw, 3rem) !important;
    display: flex !important;
    align-items: center !important;
    border: 1px solid rgba(32, 60, 125, .08) !important;
    border-radius: 20px !important;
    background: rgba(255,255,255,.95) !important;
    box-shadow: 0 14px 32px rgba(27, 45, 93, .09) !important;
}

.horizon-theme .horizon-brand,
.horizon-theme .navbar-brand {
    height: 66px !important;
    min-height: 66px !important;
    max-height: 66px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 14px !important;
    background: transparent !important;
    overflow: hidden !important;
}

.horizon-theme .site-logo-mark {
    width: clamp(190px, 14vw, 245px) !important;
    height: 62px !important;
    max-height: 62px !important;
    object-fit: contain !important;
    object-position: center !important;
    filter: none !important;
}

.horizon-theme .navbar-collapse,
.horizon-theme .navbar-nav {
    min-height: 66px !important;
    align-items: center !important;
}

.horizon-theme .navbar-nav {
    gap: .18rem !important;
}

.horizon-theme .navbar-nav .nav-item {
    height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
}

.horizon-theme .navbar-nav .nav-link,
.horizon-theme .luxury-navbar .nav-link {
    height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 .84rem !important;
    border-radius: 999px !important;
    color: #263857 !important;
    font-size: clamp(1.1rem, .9vw, 1.12rem) !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.horizon-theme .navbar-nav .nav-link:hover,
.horizon-theme .navbar-nav .nav-link.active,
.horizon-theme .navbar-nav .show > .nav-link {
    color: var(--horizon-blue) !important;
}

.horizon-theme .nav-cta {
    height: 50px !important;
    min-height: 50px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .65rem !important;
    padding: 0 1.28rem !important;
    border-radius: 14px !important;
    font-size: 1.1rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.horizon-theme .site-header.is-scrolled .horizon-navbar,
.horizon-theme .site-header.is-scrolled .luxury-navbar {
    padding: .3rem 0 .36rem !important;
}

.horizon-theme .site-header.is-scrolled .horizon-navbar > .container-fluid {
    min-height: 76px !important;
}

.horizon-theme .strategy-logo-panel {
    overflow: hidden !important;
}

.horizon-theme .strategy-logo-panel img {
    object-position: center !important;
    filter: none !important;
}

.horizon-theme .horizon-pathway-nav {
    margin-top: 0 !important;
    padding: clamp(2.6rem, 4.5vw, 4.5rem) 0 clamp(3.2rem, 5vw, 5.5rem) !important;
    background: linear-gradient(180deg, rgba(255,250,241,.85), rgba(246,250,255,.95)) !important;
}

.horizon-theme .horizon-pathway-heading {
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: .75rem !important;
    margin: 0 auto 1.6rem !important;
    text-align: center !important;
}

.horizon-theme .horizon-pathway-heading span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: .48rem .9rem !important;
    border: 1px solid rgba(36,95,214,.16) !important;
    border-radius: 999px !important;
    color: var(--horizon-blue) !important;
    background: rgba(255,255,255,.78) !important;
    box-shadow: 0 10px 30px rgba(35,57,126,.08) !important;
    font-size: 25px !important;
    font-weight: 900 !important;
    letter-spacing: .16em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}

.horizon-theme .horizon-pathway-heading h2 {
    margin: 0 auto !important;
    color: var(--horizon-ink) !important;
    font-family: "EB Garamond", Georgia, serif !important;
    font-weight: 600 !important;
    text-align: center !important;
}

.horizon-theme .horizon-pathway-heading p {
    max-width: 860px !important;
    margin: 0 auto !important;
    color: var(--horizon-ink) !important;
    font-family: "EB Garamond", Georgia, serif !important;
    font-size: clamp(2.05rem, 3.3vw, 3.45rem) !important;
    font-weight: 600 !important;
    line-height: 1.08 !important;
    letter-spacing: -.025em !important;
    text-align: center !important;
}

.horizon-theme .horizon-pathway-image-rail,
.horizon-theme .horizon-pathway-rail {
    display: grid !important;
    overflow: visible !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.horizon-theme .horizon-pathway-image-rail a {
    display: grid !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 22px !important;
}

.horizon-theme .horizon-pathway-thumb {
    border-radius: 0 !important;
}

.horizon-theme .horizon-pathway-image-rail b {
    margin: 1rem 1.05rem .45rem !important;
    font-size: 1.1rem !important;
    letter-spacing: .12em !important;
}

.horizon-theme .horizon-pathway-image-rail i {
    position: static !important;
    justify-self: end !important;
    margin: 0 1.05rem 1.05rem 0 !important;
}

.horizon-theme .horizon-services-section .horizon-service-library,
.horizon-theme .horizon-service-library {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 1.15rem !important;
    grid-auto-flow: row !important;
}

.horizon-theme .horizon-services-section .horizon-service-item,
.horizon-theme .horizon-services-section .horizon-service-item.service-card-featured,
.horizon-theme .horizon-services-section .horizon-service-item:nth-child(1),
.horizon-theme .horizon-services-section .horizon-service-item:nth-child(2),
.horizon-theme .horizon-services-section .horizon-service-item:nth-child(3),
.horizon-theme .horizon-services-section .horizon-service-item:nth-child(4),
.horizon-theme .horizon-services-section .horizon-service-item:nth-child(5),
.horizon-theme .horizon-services-section .horizon-service-item:nth-child(6),
.horizon-theme .horizon-services-section .horizon-service-item:nth-child(7),
.horizon-theme .horizon-services-section .horizon-service-item:nth-child(8),
.horizon-theme .horizon-service-item,
.horizon-theme .horizon-service-item.service-card-featured {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: 420px !important;
}

.horizon-theme .horizon-services-section .service-card,
.horizon-theme .horizon-services-section .service-card-featured .service-card {
    display: block !important;
    min-height: 420px !important;
    border-radius: 24px !important;
}

.horizon-theme .horizon-services-section .service-card-body,
.horizon-theme .horizon-services-section .service-card-featured .service-card-body {
    padding: 1.35rem !important;
}

.horizon-theme .horizon-services-section .service-card h3,
.horizon-theme .horizon-services-section .service-card-featured .service-card-body h3,
.horizon-theme .horizon-services-section .horizon-service-item:nth-child(1) .service-card h3 {
    max-width: 96% !important;
    min-height: 35px !important;
    margin-bottom: .7rem !important;
    color: #fff !important;
    font-size: clamp(1.4rem, 1.4vw, 2.18rem) !important;
    line-height: 1.03 !important;
}

.horizon-theme .horizon-services-section .service-card p {
    min-height: 68px !important;
    margin-bottom: 1rem !important;
    font-size: 1.1rem !important;
    line-height: 1.42 !important;
}

.horizon-theme .horizon-services-section .service-card .text-link {
    font-size: 1.1rem !important;
    font-weight: 900 !important;
}

.horizon-theme .cta-band {
    padding: clamp(2.6rem, 4vw, 4rem) 0 !important;
}

.horizon-theme .cta-panel {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: clamp(1.2rem, 3vw, 2rem) !important;
    align-items: center !important;
    padding: clamp(1.8rem, 4vw, 3rem) !important;
    border-radius: 28px !important;
}

.horizon-theme .cta-panel h2 {
    max-width: 720px !important;
    margin: .35rem 0 .55rem !important;
    font-size: clamp(2.15rem, 3.5vw, 3.7rem) !important;
    line-height: 1.02 !important;
}

.horizon-theme .cta-panel p {
    max-width: 780px !important;
    margin: 0 !important;
    font-size: 1.1rem !important;
    line-height: 1.55 !important;
}

.horizon-theme .cta-panel .btn {
    min-width: 215px !important;
    text-align: center !important;
}

.horizon-theme .footer-logo {
    width: 300px !important;
    max-width: 100% !important;
    height: 104px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: .9rem 1.1rem !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.2) !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 20px 50px rgba(0,0,0,.15) !important;
}

.horizon-theme .footer-site-logo,
.horizon-theme .footer-logo img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    filter: none !important;
}

.horizon-theme .site-footer h2 {
    color: #ffffff !important;
    font-family: "EB Garamond", Georgia, serif !important;
    font-size: 1.1rem !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
}

.horizon-theme .footer-links a,
.horizon-theme .footer-contact a,
.horizon-theme .footer-contact li {
    color: rgba(255,255,255,.82) !important;
    font-size: 1.1rem !important;
    line-height: 1.55 !important;
}

@media (max-width: 1399.98px) {
    .horizon-theme .horizon-navbar > .container-fluid {
        padding-left: 1.5rem !important;
        padding-right: 1.5rem !important;
    }

    .horizon-theme .site-logo-mark {
        width: 205px !important;
    }

    .horizon-theme .navbar-nav .nav-link,
.horizon-theme .luxury-navbar .nav-link {
        padding-left: .62rem !important;
        padding-right: .62rem !important;
        font-size: 1.1rem !important;
    }

    .horizon-theme .nav-cta {
        padding-left: 1.05rem !important;
        padding-right: 1.05rem !important;
        font-size: 1.1rem !important;
    }
}

@media (max-width: 1199.98px) {
    .horizon-theme .horizon-pathway-image-rail,
.horizon-theme .horizon-pathway-rail,
.horizon-theme .horizon-services-section .horizon-service-library,
.horizon-theme .horizon-service-library {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 991.98px) {
    .horizon-theme .horizon-contact-bar {
        height: auto !important;
        min-height: 32px !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        padding: .3rem .5rem !important;
        text-align: center !important;
    }

    .horizon-theme .horizon-navbar > .container-fluid {
        min-height: 74px !important;
        border-radius: 16px !important;
    }

    .horizon-theme .horizon-brand,
.horizon-theme .navbar-brand {
        height: 58px !important;
        min-height: 58px !important;
        max-height: 58px !important;
    }

    .horizon-theme .site-logo-mark {
        width: 185px !important;
        height: 54px !important;
        max-height: 54px !important;
    }

    .horizon-theme .navbar-collapse,
.horizon-theme .navbar-nav {
        min-height: auto !important;
    }

    .horizon-theme .navbar-nav .nav-item,
.horizon-theme .navbar-nav .nav-link,
.horizon-theme .luxury-navbar .nav-link,
.horizon-theme .nav-cta {
        height: auto !important;
        min-height: 44px !important;
    }

    .horizon-theme .cta-panel {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 767.98px) {
    .horizon-theme .horizon-pathway-image-rail,
.horizon-theme .horizon-pathway-rail,
.horizon-theme .horizon-services-section .horizon-service-library,
.horizon-theme .horizon-service-library,
.horizon-theme .footer-main {
        grid-template-columns: 1fr !important;
    }

    .horizon-theme .horizon-pathway-heading h2,
.horizon-theme .horizon-pathway-heading p {
        font-size: clamp(1.75rem, 8vw, 2.35rem) !important;
    }
}

.horizon-theme .horizon-pathway-heading h2 {
    width: 100% !important;
    max-width: 1280px !important;
    white-space: nowrap !important;
    font-size: clamp(1.65rem, 2.25vw, 2.55rem) !important;
    line-height: 1.18 !important;
    letter-spacing: -.02em !important;
}

.horizon-theme .horizon-pathway-heading h2 br {
    display: block !important;
}

@media (max-width: 1199.98px) {
    .horizon-theme .horizon-pathway-heading h2 {
        font-size: clamp(1.55rem, 2.2vw, 2.05rem) !important;
    }
}

@media (max-width: 767.98px) {
    .horizon-theme .horizon-pathway-heading h2 {
        white-space: normal !important;
        max-width: 92vw !important;
        font-size: clamp(1.65rem, 7vw, 2.2rem) !important;
    }
}

.horizon-theme .horizon-home-hero.horizon-services-hero-page::after {
    font-size: 4rem !important;
    bottom: -5.4rem !important;
    opacity: .75 !important;
}

.horizon-theme .horizon-hero-copy {
    display: flex !important;
    flex-direction: column !important;
}

.horizon-theme .horizon-hero-overline {
    flex-wrap: wrap !important;
    gap: .65rem !important;
    margin-bottom: 1.1rem !important;
    font-size: 1.1rem !important;
    letter-spacing: .15em !important;
}

.horizon-theme .horizon-hero-overline b {
    padding: .36rem .68rem !important;
    background: rgba(255,255,255,.8) !important;
}

.horizon-theme .horizon-hero-copy > p {
    margin: 0 0 1.45rem !important;
}

.horizon-theme .horizon-hero-copy .button-row {
    margin-top: .15rem !important;
    gap: 1rem !important;
}

.horizon-theme .horizon-hero-proof {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: .75rem !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.horizon-theme .horizon-hero-proof div,
.horizon-theme .horizon-hero-proof div:nth-child(2),
.horizon-theme .horizon-hero-proof div:nth-child(3) {
    min-height: 86px !important;
    padding: .95rem 1rem !important;
    border-radius: 16px !important;
}

.horizon-theme .horizon-hero-proof strong {
    margin-bottom: .34rem !important;
    color: #123a7a !important;
    font-family: "EB Garamond", Georgia, serif !important;
    font-size: 1.55rem !important;
    line-height: 1 !important;
    text-shadow: none !important;
}

.horizon-theme .horizon-hero-proof span {
    color: #5d6880 !important;
    font-size: 1.1rem !important;
    line-height: 1.35 !important;
}

.horizon-theme .horizon-hero-stage,
.horizon-theme .horizon-services-hero-page .strategy-card-stage {
    height: 100% !important;
    display: flex !important;
    justify-content: center !important;
    border-radius: 30px !important;
}

.horizon-theme .strategy-card-line {
    margin-bottom: 1rem !important;
}

.horizon-theme .strategy-visual-card h2 {
    margin-bottom: .7rem !important;
}

.horizon-theme .strategy-visual-card p {
    margin-bottom: 1.1rem !important;
}

.horizon-theme .strategy-steps b {
    margin-bottom: .32rem !important;
}

.horizon-theme .strategy-badges span {
    padding: .55rem .68rem !important;
    border-color: rgba(255,255,255,.18) !important;
    border-radius: 8px !important;
    font-size: 1.1rem !important;
}

@media (max-width: 1199.98px) {
    .horizon-theme .horizon-hero-grid {
        grid-template-columns: 1fr !important;
    }

    .horizon-theme .horizon-hero-copy,
.horizon-theme .horizon-hero-stage,
.horizon-theme .horizon-services-hero-page .strategy-card-stage {
        min-height: auto !important;
    }

    .horizon-theme .strategy-visual-card {
        max-width: 100% !important;
        min-height: 470px !important;
    }
}

@media (max-width: 767.98px) {
    .horizon-theme .horizon-hero-proof {
        grid-template-columns: 1fr !important;
    }

    .horizon-theme .hero-title-two-line,
.horizon-theme .horizon-hero-copy h1 {
        font-size: clamp(2.7rem, 14vw, 4rem) !important;
    }

    .horizon-theme .strategy-steps {
        grid-template-columns: 1fr !important;
    }
}

.horizon-theme .horizon-home-hero.horizon-services-hero-page {
    position: relative !important;
    overflow: hidden !important;
    padding: clamp(2.4rem, 3.2vw, 3.4rem) 0 clamp(2.6rem, 3.6vw, 4rem) !important;
    background: linear-gradient(90deg, rgb(255 255 255 / 60%) 0%, rgb(255 255 255 / 60%) 46%, rgb(255 250 241 / 60%) 100%), url(../images/sydney-opera-house-hero.png) center center / cover no-repeat !important;
}

.horizon-theme .horizon-home-hero.horizon-services-hero-page::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    width: auto !important;
    height: auto !important;
    left: 0 !important;
    top: 0 !important;
    opacity: 1 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: radial-gradient(circle at 76% 20%, rgba(214,163,77,.20), transparent 23rem), radial-gradient(circle at 12% 20%, rgba(18,58,122,.10), transparent 24rem) !important;
    pointer-events: none !important;
}

.horizon-theme .horizon-home-hero.horizon-services-hero-page::after {
    display: none !important;
}

.horizon-theme .horizon-hero-grid {
    position: relative !important;
    z-index: 1 !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(390px, .82fr) !important;
    gap: clamp(2rem, 3.7vw, 4.2rem) !important;
    align-items: stretch !important;
}

.horizon-theme .horizon-hero-copy,
.horizon-theme .horizon-hero-stage,
.horizon-theme .horizon-services-hero-page .strategy-card-stage {
    min-height: clamp(480px, 35vw, 560px) !important;
}

.horizon-theme .horizon-hero-copy {
    justify-content: center !important;
    padding: .5rem 0 !important;
}

.horizon-theme .hero-title-two-line,
.horizon-theme .horizon-hero-copy h1 {
    display: block !important;
    max-width: 760px !important;
    margin: 0 0 1.05rem !important;
    font-size: clamp(3.25rem, 4.05vw, 4rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
    color: #10203c !important;
}

.horizon-theme .hero-title-two-line span {
    display: block !important;
    white-space: nowrap !important;
}

.horizon-theme .horizon-hero-copy > p {
    max-width: 640px !important;
    margin-bottom: 1.45rem !important;
    color: #41506b !important;
    font-size: clamp(1.1rem, .95vw, 1.1rem) !important;
    line-height: 1.72 !important;
    text-align: left !important;
}

.horizon-theme .horizon-hero-stage,
.horizon-theme .horizon-services-hero-page .strategy-card-stage {
    padding: clamp(1rem, 1.4vw, 1.35rem) !important;
    align-items: stretch !important;
    background: rgba(255,255,255,.72) !important;
    border: 1px solid rgba(18, 50, 104, .10) !important;
    box-shadow: 0 26px 70px rgba(15, 37, 83, .12) !important;
}

.horizon-theme .strategy-visual-card {
    width: 100% !important;
    max-width: 520px !important;
    min-height: 100% !important;
    height: auto !important;
    padding: clamp(1.45rem, 1.8vw, 1.8rem) !important;
    color: #10203c !important;
    border: 1px solid rgba(214,163,77,.35) !important;
    border-radius: 22px !important;
    background: linear-gradient(150deg, rgba(255,255,255,.98), rgba(255,250,241,.94)), url("../images/sydney-opera-house-hero.png") center / cover no-repeat !important;
    box-shadow: 0 22px 54px rgba(16, 32, 60, .14) !important;
}

.horizon-theme .strategy-logo-panel {
    margin-bottom: .15rem !important;
}

.horizon-theme .strategy-card-line {
    background: linear-gradient(90deg, rgba(214,163,77,.95), rgba(18,58,122,.08)) !important;
}

.horizon-theme .strategy-card-overline {
    margin-bottom: -.2rem !important;
    color: #b27618 !important;
    font-size: 1.1rem !important;
    letter-spacing: .15em !important;
}

.horizon-theme .strategy-visual-card h2 {
    max-width: 460px !important;
    margin: 0 !important;
    color: #11264c !important;
    font-size: clamp(1.65rem, 2.05vw, 2.25rem) !important;
    line-height: 1.12 !important;
    letter-spacing: -.02em !important;
}

.horizon-theme .strategy-visual-card p {
    max-width: 460px !important;
    margin: 0 !important;
    color: #56627a !important;
    font-size: 1.1rem !important;
    line-height: 1.55 !important;
}

.horizon-theme .strategy-steps {
    gap: .75rem !important;
    margin-top: .2rem !important;
    padding-top: 1rem !important;
    border-top: 1px solid rgba(214,163,77,.35) !important;
}

.horizon-theme .strategy-steps article {
    min-height: 78px !important;
    padding: .75rem !important;
    border: 1px solid rgba(18,58,122,.10) !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.76) !important;
}

.horizon-theme .strategy-steps b {
    color: #b27618 !important;
    font-size: 1.55rem !important;
}

.horizon-theme .strategy-steps strong {
    color: #10203c !important;
    font-size: 1.1rem !important;
}

.horizon-theme .strategy-steps small {
    color: #62708a !important;
    font-size: 1.1rem !important;
}

.horizon-theme .strategy-badges {
    gap: .2rem !important;
    margin-top: .25rem !important;
}

.horizon-theme .strategy-badges span {
    color: #10203c !important;
    background: rgba(255,255,255,.80) !important;
    border: 1px solid rgba(18,58,122,.12) !important;
    box-shadow: none !important;
}

.horizon-theme .horizon-hero-proof {
    width: min(100%, 640px) !important;
    margin-top: 1.35rem !important;
}

.horizon-theme .horizon-hero-proof div,
.horizon-theme .horizon-hero-proof div:nth-child(2),
.horizon-theme .horizon-hero-proof div:nth-child(3) {
    background: rgba(255,255,255,.88) !important;
    border: 1px solid rgba(18,58,122,.12) !important;
    border-left: 4px solid #d6a34d !important;
    box-shadow: 0 14px 34px rgba(16, 32, 60, .08) !important;
}

@media (max-width: 1199.98px) {
    .horizon-theme .horizon-hero-grid {
        grid-template-columns: 1fr !important;
    }

    .horizon-theme .horizon-hero-copy,
.horizon-theme .horizon-hero-stage,
.horizon-theme .horizon-services-hero-page .strategy-card-stage {
        min-height: auto !important;
    }

    .horizon-theme .strategy-visual-card {
        max-width: 100% !important;
        min-height: 430px !important;
    }
}

@media (max-width: 767.98px) {
    .horizon-theme .hero-title-two-line,
.horizon-theme .horizon-hero-copy h1 {
        font-size: clamp(2.45rem, 11vw, 3.35rem) !important;
        line-height: 1.03 !important;
    }

    .horizon-theme .hero-title-two-line span {
        white-space: normal !important;
    }

    .horizon-theme .horizon-hero-proof {
        grid-template-columns: 1fr !important;
    }
}

.horizon-theme .strategy-card-overline {
    display: none !important;
}

.horizon-theme .strategy-visual-card {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 1rem !important;
}

.horizon-theme .strategy-logo-panel {
    width: 100% !important;
    min-height: clamp(138px, 9vw, 164px) !important;
    max-height: none !important;
    padding: clamp(1rem, 1.3vw, 1.35rem) clamp(1.2rem, 1.8vw, 1.9rem) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    border: 1px solid rgba(214, 163, 77, .30) !important;
    border-radius: 18px !important;
    box-shadow: 0 16px 38px rgba(16, 32, 60, .10) !important;
}

.horizon-theme .strategy-logo-panel img {
    width: min(100%, 390px) !important;
    height: clamp(96px, 7vw, 125px) !important;
    max-height: 125px !important;
    object-fit: contain !important;
    display: block !important;
}

.horizon-theme .strategy-card-line {
    margin: .25rem 0 .15rem !important;
}

.horizon-theme .strategy-visual-card h2 {
    margin-top: .1rem !important;
}

.horizon-theme .horizon-pathway-image-rail,
.horizon-theme .horizon-pathway-rail {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: clamp(.9rem, 1.2vw, 1.25rem) !important;
    align-items: stretch !important;
}

.horizon-theme .horizon-pathway-image-rail a {
    min-height: 318px !important;
    grid-template-rows: 142px auto 1fr auto !important;
    background: rgba(255,255,255,.98) !important;
    border: 1px solid rgba(18, 50, 104, .12) !important;
    box-shadow: 0 20px 52px rgba(18, 50, 104, .10) !important;
}

.horizon-theme .horizon-pathway-thumb {
    height: 142px !important;
    background: #f4f7fb !important;
}

.horizon-theme .horizon-pathway-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

.horizon-theme .horizon-pathway-image-rail span {
    min-height: 76px !important;
    margin: 0 1.05rem 1rem !important;
    color: #10203c !important;
    font-size: clamp(1.1rem, 1vw, 1.22rem) !important;
    line-height: 1.18 !important;
    font-weight: 800 !important;
    text-align: left !important;
    display: flex !important;
    align-items: flex-start !important;
}

.horizon-theme .horizon-pathway-image-rail b {
    color: #d17537 !important;
}

.horizon-theme .horizon-pathway-image-rail i {
    width: 34px !important;
    height: 34px !important;
    border: 1px solid rgba(18, 50, 104, .16) !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #10203c !important;
    background: #ffffff !important;
}

@media (max-width: 1199.98px) {
    .horizon-theme .horizon-pathway-image-rail,
.horizon-theme .horizon-pathway-rail {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    .horizon-theme .horizon-pathway-image-rail,
.horizon-theme .horizon-pathway-rail {
        grid-template-columns: 1fr !important;
    }

    .horizon-theme .strategy-logo-panel {
        min-height: 118px !important;
    }

    .horizon-theme .strategy-logo-panel img {
        height: 88px !important;
    }
}

.horizon-theme .horizon-director-shell.horizon-director-redesigned {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, .92fr);
    gap: 3rem;
    align-items: center;
}

.horizon-theme .horizon-director-redesigned .horizon-director-visual {
    position: relative;
    min-height: 640px;
    overflow: hidden;
    border-radius: 36px;
    background: #ffffff;
    box-shadow: 0 35px 80px rgba(31, 49, 109, .18);
}

.horizon-theme .horizon-director-redesigned .horizon-director-visual img {
    width: 100%;
    height: 100%;
    min-height: 640px;
    display: block;
    object-fit: cover;
    object-position: center center;
}

.horizon-theme .horizon-director-redesigned .director-copy-redesigned {
    max-width: 560px;
    margin-left: auto;
}

.horizon-theme .horizon-director-redesigned .director-copy-redesigned h3 {
    margin: .7rem 0 1.2rem;
    font-size: clamp(2.8rem, 4vw, 4rem);
}

.horizon-theme .horizon-director-redesigned .director-copy-redesigned p {
    line-height: 1.85;
}

.horizon-theme .horizon-director-redesigned .director-copy-redesigned .button-row {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 1.8rem;
}

@media (max-width: 1199.98px) {
    .horizon-theme .horizon-director-shell.horizon-director-redesigned {
        grid-template-columns: 1fr 1fr;
        gap: 2.25rem;
    }

    .horizon-theme .horizon-director-redesigned .horizon-director-visual,
.horizon-theme .horizon-director-redesigned .horizon-director-visual img {
        min-height: 560px;
    }
}

@media (max-width: 991.98px) {
    .horizon-theme .horizon-director-shell.horizon-director-redesigned {
        grid-template-columns: 1fr;
    }

    .horizon-theme .horizon-director-redesigned .director-copy-redesigned {
        max-width: 100%;
        margin-left: 0;
    }

    .horizon-theme .horizon-director-redesigned .horizon-director-visual,
.horizon-theme .horizon-director-redesigned .horizon-director-visual img {
        min-height: 460px;
    }
}

@media (max-width: 575.98px) {
    .horizon-theme .horizon-director-redesigned .horizon-director-visual,
.horizon-theme .horizon-director-redesigned .horizon-director-visual img {
        min-height: 340px;
        border-radius: 26px;
    }
}

/* =========================================================
   Contact page creative rebuild — larger banner, richer company
   information, and single-row creative intro
   ========================================================= */
.contact-us-page .australian-heritage-banner,
.contact-us-page .page-hero {
    min-height: clamp(560px, 50vw, 700px) !important;
    padding: clamp(5.5rem, 8vw, 8rem) 0 clamp(5.8rem, 8vw, 8.4rem) !important;
    background-position: center center, center center, center 66% !important;
}

.contact-us-page .australian-heritage-banner .page-hero-content {
    max-width: 980px !important;
}

.contact-us-page .australian-heritage-banner .page-hero-content h1,
.contact-us-page .page-hero h1 {
    max-width: 980px !important;
    font-size: clamp(4rem, 7vw, 4rem) !important;
    line-height: .9 !important;
    letter-spacing: -.055em !important;
}

.contact-us-page .australian-heritage-banner .page-hero-content p,
.contact-us-page .page-hero p {
    max-width: 850px !important;
    font-size: clamp(1.1rem, 1.35vw, 1.35rem) !important;
    line-height: 1.7 !important;
}

.contact-us-page .australian-heritage-banner .horizon-page-actions {
    margin-top: 2rem !important;
}

.contact-us-page .contact-intelligence-section {
    padding-top: clamp(3rem, 5vw, 5rem) !important;
    padding-bottom: clamp(3rem, 5vw, 5rem) !important;
    background: linear-gradient(135deg, #fffdf8 0%, #eef7ff 54%, #fff6ea 100%) !important;
}

.contact-us-page .contact-intelligence-grid,
.contact-us-page .contact-intelligence-single-row {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(260px, .55fr) minmax(290px, .72fr) !important;
    gap: clamp(1rem, 2vw, 1.5rem) !important;
    align-items: stretch !important;
    padding: clamp(1rem, 1.6vw, 1.4rem) !important;
    overflow: hidden !important;
    border: 1px solid rgba(18, 50, 104, .10) !important;
    border-radius: 34px !important;
    background:
        radial-gradient(circle at 8% 10%, rgba(214, 163, 77, .16), transparent 22rem),
        radial-gradient(circle at 95% 0%, rgba(36, 95, 214, .10), transparent 24rem),
        rgba(255, 255, 255, .92) !important;
    box-shadow: 0 28px 78px rgba(18, 50, 104, .12) !important;
    backdrop-filter: blur(18px) !important;
}

.contact-us-page .contact-intelligence-grid::before,
.contact-us-page .contact-intelligence-single-row::before {
    content: "";
    position: absolute;
    inset: auto 1.2rem 1.2rem auto;
    width: 11rem;
    height: 11rem;
    border: 1px solid rgba(214, 163, 77, .22);
    border-radius: 50%;
    pointer-events: none;
}

.contact-us-page .contact-intelligence-copy,
.contact-us-page .contact-agent-profile,
.contact-us-page .contact-proof-row,
.contact-us-page .contact-message-panel {
    position: relative !important;
    z-index: 1 !important;
}

.contact-us-page .contact-intelligence-copy,
.contact-us-page .contact-agent-profile {
    overflow: hidden;
    border: 1px solid rgba(18, 50, 104, .08) !important;
    border-radius: 24px !important;
    background: rgba(255, 255, 255, .78) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.contact-us-page .contact-intelligence-copy {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: clamp(1.7rem, 3vw, 3rem) !important;
}

.contact-us-page .contact-intelligence-copy::after,
.contact-us-page .contact-agent-profile::after {
    display: none !important;
}

.contact-us-page .contact-intelligence-copy h2,
.contact-us-page .contact-why-heading h2,
.contact-us-page .contact-services-section .section-header h2,
.contact-us-page .contact-process-section .section-header h2 {
    margin: .85rem 0 1rem;
    font-size: clamp(2.75rem, 4.4vw, 4rem);
    line-height: .96;
}

.contact-us-page .contact-intelligence-copy p,
.contact-us-page .contact-why-heading p,
.contact-us-page .contact-services-section .section-header p,
.contact-us-page .contact-process-section .section-header p {
    max-width: 840px;
    color: #56627a;
    font-size: clamp(1.1rem, 1vw, 1.1rem);
    line-height: 1.72;
    text-align: left !important;
}

.contact-us-page .contact-agent-profile {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    min-height: 100% !important;
    padding: clamp(1.4rem, 2.2vw, 2.1rem) !important;
    color: #10203c !important;
}

.contact-us-page .contact-agent-profile span,
.contact-us-page .contact-message-panel span {
    display: inline-flex;
    margin-bottom: .75rem !important;
    padding: .5rem .82rem;
    border: 1px solid rgba(214, 163, 77, .36) !important;
    border-radius: 999px;
    color: #b27618 !important;
    background: rgba(255, 248, 235, .9) !important;
    font-size: 1.1rem !important;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.contact-us-page .contact-agent-profile h3,
.contact-us-page .contact-message-panel h3 {
    margin: 0 0 .55rem !important;
    color: #10203c !important;
    font-size: clamp(2.25rem, 3.2vw, 3.45rem) !important;
    line-height: .98 !important;
}

.contact-us-page .contact-agent-profile p,
.contact-us-page .contact-agent-profile li {
    margin: 0 0 1.15rem !important;
    color: #56627a !important;
    font-size: 1.1rem !important;
    line-height: 1.45 !important;
    text-align: left !important;
}

.contact-us-page .contact-agent-profile ul {
    display: none !important;
}

.contact-us-page .contact-agent-profile .btn {
    margin-top: auto !important;
}

.contact-us-page .contact-proof-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .85rem !important;
    margin: 0 !important;
}

.contact-us-page .contact-proof-row div {
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: 74px 1fr !important;
    gap: .9rem !important;
    align-items: center !important;
    padding: 1rem !important;
    border: 1px solid rgba(18, 50, 104, .10) !important;
    border-left: 5px solid #d6a34d !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, .82) !important;
    box-shadow: none !important;
}

.contact-us-page .contact-proof-row strong,
.contact-us-page .contact-proof-row span {
    display: block;
}

.contact-us-page .contact-proof-row strong {
    color: #123a7a !important;
    font-size: clamp(1.75rem, 2vw, 2.2rem) !important;
    line-height: 1;
}

.contact-us-page .contact-proof-row span {
    margin: 0 !important;
    color: #5d6880 !important;
    font-size: 1.1rem !important;
    font-weight: 700;
    line-height: 1.35 !important;
}

.contact-us-page .contact-message-panel {
    position: relative;
    overflow: hidden;
    padding: clamp(1.8rem, 3vw, 2.7rem);
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 30px;
    color: #ffffff;
    background:
        radial-gradient(circle at 100% 0%, rgba(255, 205, 118, .2), transparent 16rem),
        linear-gradient(135deg, #123a7a 0%, #245fd6 52%, #7147d8 100%);
    box-shadow: 0 24px 65px rgba(32, 51, 115, .12);
    backdrop-filter: blur(16px);
}

.contact-us-page .contact-message-panel span {
    border-color: rgba(255, 220, 145, .34) !important;
    color: #ffdb8c !important;
    background: rgba(8, 27, 68, .24) !important;
}

.contact-us-page .contact-message-panel h3 {
    color: #ffffff !important;
}

.contact-us-page .contact-message-panel p,
.contact-us-page .contact-message-panel li {
    color: rgba(255, 255, 255, .84) !important;
    font-size: 1.1rem;
    line-height: 1.55;
}

.contact-us-page .contact-message-panel ul {
    display: grid;
    gap: .75rem;
    margin: 1.4rem 0 1.8rem;
    padding: 0;
    list-style: none;
}

.contact-us-page .contact-message-panel li {
    position: relative;
    padding-left: 1.4rem;
}

.contact-us-page .contact-message-panel li::before {
    content: "";
    position: absolute;
    top: .68rem;
    left: 0;
    width: .48rem;
    height: .48rem;
    border-radius: 50%;
    background: #ffdb8c;
}

@media (max-width: 1199.98px) {
    .contact-us-page .contact-intelligence-grid,
    .contact-us-page .contact-intelligence-single-row {
        grid-template-columns: minmax(0, 1fr) minmax(260px, .55fr) !important;
    }

    .contact-us-page .contact-proof-row {
        grid-column: 1 / -1 !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .contact-us-page .contact-proof-row div {
        grid-template-columns: 1fr !important;
        gap: .35rem !important;
    }
}

@media (max-width: 991.98px) {
    .contact-us-page .contact-intelligence-grid,
    .contact-us-page .contact-intelligence-single-row,
    .contact-us-page .contact-details-upgraded {
        grid-template-columns: 1fr !important;
    }

    .contact-us-page .australian-heritage-banner,
    .contact-us-page .page-hero {
        min-height: 520px !important;
        padding: 4.8rem 0 5.2rem !important;
        background-position: center center, center center, 60% center !important;
    }
}

@media (max-width: 575.98px) {
    .contact-us-page .australian-heritage-banner,
    .contact-us-page .page-hero {
        min-height: 460px !important;
        padding: 4rem 0 4.5rem !important;
    }

    .contact-us-page .australian-heritage-banner .page-hero-content h1,
    .contact-us-page .page-hero h1 {
        font-size: clamp(3.35rem, 15vw, 4rem) !important;
    }

    .contact-us-page .contact-proof-row,
    .contact-us-page .contact-service-grid,
    .contact-us-page .contact-why-grid,
    .contact-us-page .contact-process-grid {
        grid-template-columns: 1fr !important;
    }
}

.contact-us-page .contact-service-grid,
.contact-us-page .contact-why-grid,
.contact-us-page .contact-process-grid {
    display: grid;
    gap: 1.15rem;
}

.contact-us-page .contact-service-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.contact-us-page .contact-why-layout {
    display: grid;
    grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
    gap: clamp(2rem, 5vw, 5.5rem);
    align-items: start;
}

.contact-us-page .contact-why-heading {
    position: sticky;
    top: 150px;
}

.contact-us-page .contact-why-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contact-us-page .contact-process-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.contact-us-page .contact-service-card,
.contact-us-page .contact-why-card,
.contact-us-page .contact-process-card {
    min-height: 100%;
    padding: clamp(1.35rem, 2.3vw, 2rem);
    border: 1px solid rgba(36, 95, 214, .12);
    border-radius: 22px;
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 18px 46px rgba(36, 54, 116, .09);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.contact-us-page .contact-service-card:hover,
.contact-us-page .contact-why-card:hover,
.contact-us-page .contact-process-card:hover {
    transform: translateY(-6px);
    border-color: rgba(236, 184, 91, .45);
    box-shadow: 0 28px 60px rgba(36, 54, 116, .14);
}

.contact-us-page .contact-service-card span,
.contact-us-page .contact-process-card span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    margin-bottom: 1.1rem;
    border-radius: 50%;
    color: #ffffff;
    background: linear-gradient(135deg, var(--horizon-blue), var(--horizon-violet));
    font-weight: 900;
}

.contact-us-page .contact-service-card h3,
.contact-us-page .contact-why-card h3,
.contact-us-page .contact-process-card h3 {
    margin: 0 0 .75rem;
    color: var(--horizon-ink);
    font-size: clamp(1.55rem, 2vw, 2.05rem);
    line-height: 1.05;
}

.contact-us-page .contact-service-card p,
.contact-us-page .contact-why-card p,
.contact-us-page .contact-process-card p {
    margin: 0;
    color: var(--horizon-muted);
    font-size: 1.1rem;
    line-height: 1.65;
    text-align: left !important;
}

.contact-us-page .contact-process-card {
    border-color: rgba(255, 255, 255, .22);
    background: rgba(255, 255, 255, .1);
    box-shadow: 0 18px 46px rgba(2, 10, 38, .12);
    backdrop-filter: blur(12px);
}

.contact-us-page .contact-process-card h3,
.contact-us-page .contact-process-card p {
    color: #ffffff !important;
}

.contact-us-page .contact-process-card span {
    color: #12264d;
    background: linear-gradient(135deg, #ffd773, #ff8a68);
}

.contact-us-page .contact-details-upgraded {
    align-items: start;
}

.contact-us-page .contact-details-upgraded .horizon-contact-intro {
    position: static !important;
}

.contact-us-page .contact-details-upgraded .contact-card-prominent {
    min-height: 100%;
}

.contact-us-page .contact-card-prominent strong {
    display: block;
    margin-bottom: .35rem;
    font-size: clamp(2.15rem, 3vw, 3.2rem);
    line-height: 1;
}

.contact-us-page .contact-card-prominent span,
.contact-us-page .contact-card-prominent a,
.contact-us-page .contact-card-prominent address {
    display: block;
    margin-top: .65rem;
    font-size: 1.1rem;
    font-style: normal;
}

.contact-us-page .map-panel {
    border-radius: 32px !important;
}

.contact-us-page .map-copy h2 {
    font-size: clamp(2.4rem, 3.8vw, 4rem);
}

@media (max-width: 1199.98px) {
    .contact-us-page .contact-service-grid,
    .contact-us-page .contact-process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-us-page .contact-why-layout {
        grid-template-columns: 1fr;
    }

    .contact-us-page .contact-why-heading {
        position: static;
    }
}

@media (max-width: 991.98px) {
    .contact-us-page .contact-intelligence-grid,
    .contact-us-page .contact-details-upgraded {
        grid-template-columns: 1fr;
    }

    .contact-us-page .australian-heritage-banner,
    .contact-us-page .page-hero {
        min-height: 520px !important;
        padding: 4.8rem 0 5.2rem !important;
        background-position: center center, center center, 60% center !important;
    }
}

@media (max-width: 575.98px) {
    .contact-us-page .australian-heritage-banner,
    .contact-us-page .page-hero {
        min-height: 460px !important;
        padding: 4rem 0 4.5rem !important;
    }

    .contact-us-page .australian-heritage-banner .page-hero-content h1,
    .contact-us-page .page-hero h1 {
        font-size: clamp(3.35rem, 15vw, 4rem) !important;
    }

    .contact-us-page .contact-proof-row,
    .contact-us-page .contact-service-grid,
    .contact-us-page .contact-why-grid,
    .contact-us-page .contact-process-grid {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   Client final revision 2026-06-27 — contact banner, dropdown clarity, font guard
   ========================================================= */
.horizon-theme {
    font-size: 1.1rem;
}

.contact-us-page .australian-heritage-banner,
.contact-us-page .page-hero {
    min-height: 620px !important;
    padding: 6.4rem 0 6.8rem !important;
    background-position: center center, center center, center 62% !important;
}

.contact-us-page .australian-heritage-banner .page-hero-content h1,
.contact-us-page .page-hero h1 {
    font-size: clamp(3.2rem, 4.8vw, 4rem) !important;
    line-height: 1.04 !important;
}

.contact-us-page .australian-heritage-banner .page-hero-content p,
.contact-us-page .page-hero p {
    font-size: clamp(1.1rem, 1.25vw, 1.35rem) !important;
    line-height: 1.75 !important;
}

.horizon-theme small{
    font-size: 18px !important;
}
.horizon-theme .eyebrow{
    font-size: 25px !important;
}
.horizon-theme .dropdown-item{
    font-size: 25px !important;
}
.horizon-theme .footer-links a{
    font-size: 1.1rem !important;
}
.horizon-theme .footer-contact a{
    font-size: 1.1rem !important;
}
.horizon-theme .footer-contact li{
    font-size: 1.1rem !important;
}
.horizon-theme .form-text {
    font-size: 1.1rem !important;
}

@media (max-width: 991.98px) {
    .contact-us-page .australian-heritage-banner,
    .contact-us-page .page-hero {
        min-height: 540px !important;
        padding: 5.2rem 0 5.6rem !important;
        background-position: center center, center center, 60% center !important;
    }
}

@media (max-width: 575.98px) {
    .contact-us-page .australian-heritage-banner,
    .contact-us-page .page-hero {
        min-height: 470px !important;
        padding: 4.2rem 0 4.6rem !important;
    }
}

/* =========================================================
   Client revision 2026-06-27 — simple professional contact page
   ========================================================= */
.contact-us-page .australian-heritage-banner,
.contact-us-page .page-hero {
    min-height: clamp(680px, 54vw, 760px) !important;
    padding: clamp(6.8rem, 9vw, 8.8rem) 0 clamp(7rem, 9vw, 9rem) !important;
    background-position: center center, center center, center 68% !important;
}

.contact-us-page .australian-heritage-banner .page-hero-content h1,
.contact-us-page .page-hero h1 {
    font-size: clamp(3.4rem, 5.2vw, 4rem) !important;
    line-height: 1.02 !important;
}

.contact-us-page .contact-simple-intro-section {
    padding-top: clamp(3.4rem, 5vw, 5rem) !important;
    padding-bottom: clamp(3.4rem, 5vw, 5rem) !important;
    background: linear-gradient(135deg, #fffdf8 0%, #f3f8ff 55%, #fff8ed 100%) !important;
}

.contact-us-page .contact-simple-panel {
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(310px, .65fr) !important;
    gap: clamp(1.4rem, 3vw, 3rem) !important;
    align-items: stretch !important;
    padding: clamp(1.5rem, 3vw, 2.8rem) !important;
    border: 1px solid rgba(18, 50, 104, .10) !important;
    border-radius: 28px !important;
    background: rgba(255, 255, 255, .94) !important;
    box-shadow: 0 24px 70px rgba(18, 50, 104, .12) !important;
}

.contact-us-page .contact-simple-copy {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

.contact-us-page .contact-simple-copy h2,
.contact-us-page .contact-why-heading h2,
.contact-us-page .contact-services-section .section-header h2,
.contact-us-page .contact-process-section .section-header h2,
.contact-us-page .horizon-contact-intro h2 {
    margin: .85rem 0 1rem !important;
    color: #10203c !important;
    font-size: clamp(2.35rem, 3.6vw, 4rem) !important;
    line-height: 1.06 !important;
    letter-spacing: -.025em !important;
}

.contact-us-page .contact-simple-copy p,
.contact-us-page .contact-why-heading p,
.contact-us-page .contact-services-section .section-header p,
.contact-us-page .contact-process-section .section-header p,
.contact-us-page .horizon-contact-intro p {
    max-width: 880px !important;
    color: #56627a !important;
    font-size: 1.1rem !important;
    line-height: 1.75 !important;
    text-align: left !important;
}

.contact-us-page .contact-simple-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: .75rem !important;
    margin-top: 1.25rem !important;
}

.contact-us-page .contact-simple-tags span {
    display: inline-flex !important;
    align-items: center !important;
    padding: .68rem .92rem !important;
    border: 1px solid rgba(214, 163, 77, .34) !important;
    border-radius: 999px !important;
    color: #123a7a !important;
    background: #fff8eb !important;
    font-size: 1.1rem !important;
    font-weight: 800 !important;
}

.contact-us-page .contact-simple-agent {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: clamp(1.5rem, 2.4vw, 2.2rem) !important;
    border: 1px solid rgba(214, 163, 77, .32) !important;
    border-radius: 22px !important;
    background: linear-gradient(145deg, #fffaf1, #ffffff) !important;
    box-shadow: inset 5px 0 0 #d6a34d !important;
}

.contact-us-page .contact-simple-agent strong {
    display: block !important;
    color: #10203c !important;
    font-size: clamp(2.25rem, 3.2vw, 3.45rem) !important;
    line-height: 1 !important;
}

.contact-us-page .contact-simple-agent span,
.contact-us-page .contact-simple-agent p,
.contact-us-page .contact-phone-link {
    color: #56627a !important;
    font-size: 1.1rem !important;
    line-height: 1.55 !important;
}

.contact-us-page .contact-simple-agent span {
    display: block !important;
    margin: .85rem 0 1rem !important;
    font-weight: 800 !important;
}

.contact-us-page .contact-simple-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1rem !important;
    align-items: center !important;
    margin-top: 1.25rem !important;
}

.contact-us-page .contact-phone-link {
    color: #123a7a !important;
    font-weight: 900 !important;
}

.contact-us-page .contact-simple-service-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.contact-us-page .contact-simple-split,
.contact-us-page .contact-simple-details {
    display: grid !important;
    grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr) !important;
    gap: clamp(2rem, 5vw, 5rem) !important;
    align-items: start !important;
}

.contact-us-page .contact-why-heading {
    position: sticky !important;
    top: 150px !important;
}

.contact-us-page .contact-simple-why-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.contact-us-page .contact-simple-process-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.contact-us-page .contact-service-card,
.contact-us-page .contact-why-card,
.contact-us-page .contact-process-card {
    border-radius: 20px !important;
}

.contact-us-page .contact-service-card h3,
.contact-us-page .contact-why-card h3,
.contact-us-page .contact-process-card h3,
.contact-us-page .contact-simple-checklist h3 {
    font-size: clamp(1.55rem, 2vw, 2.15rem) !important;
    line-height: 1.12 !important;
}

.contact-us-page .contact-service-card p,
.contact-us-page .contact-why-card p,
.contact-us-page .contact-process-card p,
.contact-us-page .contact-simple-checklist li,
.contact-us-page .contact-card-prominent span,
.contact-us-page .contact-card-prominent a,
.contact-us-page .contact-card-prominent address {
    font-size: 1.1rem !important;
    line-height: 1.65 !important;
    text-align: left !important;
}

.contact-us-page .contact-simple-checklist {
    padding: clamp(1.5rem, 2.8vw, 2.4rem) !important;
    border: 1px solid rgba(18, 50, 104, .10) !important;
    border-left: 5px solid #d6a34d !important;
    border-radius: 22px !important;
    color: #10203c !important;
    background: #ffffff !important;
    box-shadow: 0 18px 46px rgba(36, 54, 116, .08) !important;
}

.contact-us-page .contact-simple-checklist span {
    display: inline-flex !important;
    margin-bottom: .85rem !important;
    padding: .5rem .82rem !important;
    border: 1px solid rgba(214, 163, 77, .36) !important;
    border-radius: 999px !important;
    color: #b27618 !important;
    background: #fff8eb !important;
    font-size: 1.1rem !important;
    font-weight: 900 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
}

.contact-us-page .contact-simple-checklist h3,
.contact-us-page .contact-simple-checklist li {
    color: #10203c !important;
}

.contact-us-page .contact-simple-checklist ul {
    display: grid !important;
    gap: .8rem !important;
    margin: 1rem 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.contact-us-page .contact-simple-checklist li {
    position: relative !important;
    padding-left: 1.35rem !important;
}

.contact-us-page .contact-simple-checklist li::before {
    content: "" !important;
    position: absolute !important;
    top: .68rem !important;
    left: 0 !important;
    width: .48rem !important;
    height: .48rem !important;
    border-radius: 50% !important;
    background: #d6a34d !important;
}

@media (max-width: 1199.98px) {
    .contact-us-page .contact-simple-service-grid,
    .contact-us-page .contact-simple-process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .contact-us-page .contact-simple-split,
    .contact-us-page .contact-simple-details {
        grid-template-columns: 1fr !important;
    }

    .contact-us-page .contact-why-heading {
        position: static !important;
    }
}

@media (max-width: 991.98px) {
    .contact-us-page .contact-simple-panel {
        grid-template-columns: 1fr !important;
    }

    .contact-us-page .australian-heritage-banner,
    .contact-us-page .page-hero {
        min-height: 560px !important;
        padding: 5.4rem 0 5.8rem !important;
    }
}

@media (max-width: 767.98px) {
    .contact-us-page .contact-simple-service-grid,
    .contact-us-page .contact-simple-why-grid,
    .contact-us-page .contact-simple-process-grid {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 575.98px) {
    .contact-us-page .australian-heritage-banner,
    .contact-us-page .page-hero {
        min-height: 500px !important;
        padding: 4.5rem 0 4.9rem !important;
    }
}


/* =========================================================
   Final simple professional update — About director + Contact page
   ========================================================= */
.horizon-theme .director-clean-heading {
    max-width: 980px;
    margin: 0 auto 2.4rem;
    text-align: center;
}
.horizon-theme .director-clean-heading h2 {
    margin: .65rem 0 .8rem;
    color: #10203c;
    font-size: clamp(2.6rem, 4vw, 4rem) !important;
    line-height: 1.04;
}
.horizon-theme .director-clean-heading p {
    max-width: 900px;
    margin: 0 auto;
    color: #5b667d;
    font-size: 1.1rem !important;
    line-height: 1.75;
    text-align: center !important;
}
.horizon-theme .director-clean-top {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    gap: clamp(1.8rem, 4vw, 4rem);
    align-items: stretch;
}
.horizon-theme .director-clean-image {
    min-height: 540px;
    overflow: hidden;
    border: 1px solid rgba(18, 50, 104, .10);
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 28px 70px rgba(31, 49, 109, .15);
}
.horizon-theme .director-clean-image img {
    width: 100%;
    height: 100%;
    min-height: 540px;
    object-fit: cover;
    object-position: center center;
    display: block;
}
.horizon-theme .director-clean-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 540px;
    padding: clamp(1.8rem, 3vw, 3rem);
    border: 1px solid rgba(214, 163, 77, .28);
    border-radius: 28px;
    background: linear-gradient(145deg, #fffaf1, #ffffff 58%, #f5f9ff);
    box-shadow: inset 6px 0 0 #d6a34d, 0 22px 60px rgba(31, 49, 109, .10);
}
.horizon-theme .director-clean-card span {
    color: #b27618;
    font-size: 1.1rem !important;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.horizon-theme .director-clean-card strong {
    display: block;
    margin: .8rem 0 .2rem;
    color: #10203c;
    font-family: "EB Garamond", Georgia, serif;
    font-size: clamp(2.7rem, 4vw, 4rem) !important;
    line-height: 1;
}
.horizon-theme .director-clean-card small {
    color: #123a7a;
    font-size: 1.1rem !important;
    font-weight: 800;
}
.horizon-theme .director-clean-card p,
.horizon-theme .director-clean-story p,
.horizon-theme .director-clean-card li {
    color: #56627a;
    font-size: 1.1rem !important;
    line-height: 1.75;
    text-align: left !important;
}
.horizon-theme .director-clean-card p {
    margin: 1.35rem 0;
}
.horizon-theme .director-clean-card ul {
    display: grid;
    gap: .7rem;
    margin: 0 0 1.6rem;
    padding: 0;
    list-style: none;
}
.horizon-theme .director-clean-card li {
    position: relative;
    padding-left: 1.3rem;
}
.horizon-theme .director-clean-card li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .74rem;
    width: .48rem;
    height: .48rem;
    border-radius: 50%;
    background: #d6a34d;
}
.horizon-theme .director-clean-story {
    margin-top: 2rem;
    padding: clamp(1.6rem, 3vw, 2.6rem);
    border: 1px solid rgba(18, 50, 104, .10);
    border-radius: 24px;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 18px 48px rgba(31, 49, 109, .08);
}
.horizon-theme .director-clean-story p:last-child {
    margin-bottom: 0;
}
.horizon-theme .director-clean-actions {
    justify-content: center;
    margin-top: 2rem;
}

.contact-page-clean-only .contact-clean-section {
    padding-top: clamp(3.4rem, 5vw, 5.2rem) !important;
    padding-bottom: clamp(3.4rem, 5vw, 5.2rem) !important;
    background: linear-gradient(135deg, #fffdf8 0%, #f3f8ff 55%, #fff8ed 100%) !important;
}
.contact-page-clean-only .australian-heritage-banner,
.contact-page-clean-only .page-hero {
    min-height: clamp(580px, 52vw, 720px) !important;
    padding: clamp(5.5rem, 8vw, 8rem) 0 !important;
    background-position: center center, center center, center 25% !important;
}
.contact-page-clean-only .australian-heritage-banner .page-hero-content h1,
.contact-page-clean-only .page-hero h1 {
    font-size: clamp(3rem, 4.8vw, 4rem) !important;
    line-height: 1.02 !important;
}
.contact-page-clean-only .contact-clean-header {
    max-width: 880px;
    margin: 0 auto 2rem;
    text-align: center;
}
.contact-page-clean-only .contact-clean-header h2,
.contact-page-clean-only .contact-clean-agent h2 {
    margin: .7rem 0 .8rem;
    color: #10203c;
    font-size: clamp(2.4rem, 3.8vw, 4rem) !important;
    line-height: 1.05;
}
.contact-page-clean-only .contact-clean-header p,
.contact-page-clean-only .contact-clean-agent p,
.contact-page-clean-only .map-copy p,
.contact-page-clean-only .map-copy a {
    color: #56627a;
    font-size: 1.1rem !important;
    line-height: 1.7;
    text-align: center;
}
.contact-page-clean-only .contact-clean-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}
.contact-page-clean-only .contact-clean-card {
    min-height: 280px;
    display: flex;
    flex-direction: column;
    padding: 1.45rem;
    border: 1px solid rgba(18, 50, 104, .10);
    border-radius: 22px;
    background: rgba(255, 255, 255, .95);
    box-shadow: 0 20px 52px rgba(18, 50, 104, .10);
}
.contact-page-clean-only .contact-clean-card span {
    color: #b27618;
    font-size: 1.1rem !important;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.contact-page-clean-only .contact-clean-card h3 {
    margin: .9rem 0 .65rem;
    color: #10203c;
    font-size: clamp(1.55rem, 2vw, 2.1rem) !important;
    line-height: 1.12;
    overflow-wrap: anywhere;
}
.contact-page-clean-only .contact-clean-card p {
    flex: 1;
    margin-bottom: 1rem;
    color: #5b667d;
    font-size: 1.1rem !important;
    line-height: 1.58;
    text-align: left !important;
}
.contact-page-clean-only .contact-clean-card a {
    color: #123a7a;
    font-size: 1.1rem !important;
    font-weight: 900;
}
.contact-page-clean-only .contact-clean-agent {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    margin-top: 1.2rem;
    padding: clamp(1.5rem, 3vw, 2.4rem);
    border: 1px solid rgba(214, 163, 77, .30);
    border-radius: 24px;
    background: linear-gradient(135deg, #fffaf1, #ffffff);
    box-shadow: inset 6px 0 0 #d6a34d, 0 20px 54px rgba(18, 50, 104, .09);
}
.contact-page-clean-only .contact-clean-agent p {
    margin: 0;
    text-align: left !important;
    font-weight: 800;
}
.contact-page-clean-only .contact-clean-agent-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
    justify-content: flex-end;
}
.contact-page-clean-only .contact-clean-map-section {
    padding-top: clamp(3rem, 5vw, 5rem) !important;
}
.contact-page-clean-only .contact-clean-map .map-copy p {
    text-align: left !important;
}
.contact-page-clean-only .contact-clean-map .map-copy a:not(.btn) {
    color: #123a7a;
    font-weight: 800;
}

@media (max-width: 1199.98px) {
    .contact-page-clean-only .contact-clean-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 991.98px) {
    .horizon-theme .director-clean-top {
        grid-template-columns: 1fr;
    }
    .horizon-theme .director-clean-image,
    .horizon-theme .director-clean-image img,
    .horizon-theme .director-clean-card {
        min-height: 430px;
    }
    .contact-page-clean-only .contact-clean-agent {
        align-items: flex-start;
        flex-direction: column;
    }
    .contact-page-clean-only .contact-clean-agent-actions {
        justify-content: flex-start;
    }
}
@media (max-width: 767.98px) {
    .contact-page-clean-only .contact-clean-grid {
        grid-template-columns: 1fr;
    }
    .contact-page-clean-only .contact-clean-card {
        min-height: auto;
    }
    .contact-page-clean-only .australian-heritage-banner,
    .contact-page-clean-only .page-hero {
        min-height: 500px !important;
        padding: 4.5rem 0 !important;
    }
}

/* =========================================================
   Final requested update — About page director only + clean contact info
   ========================================================= */
.horizon-theme p {
    font-size: clamp(1.3rem, 1.05vw, 1.38rem) !important;
    line-height: 1.72 !important;
}

.horizon-theme .horizon-pathway-image-rail b {
    font-size: 1.6rem !important;
    line-height: 1.12 !important;
}

.horizon-theme .about-director-page-section {
    background:
        radial-gradient(circle at 92% 10%, rgba(214, 163, 77, .14), transparent 24rem),
        linear-gradient(135deg, #f6fbff, #fff9ef) !important;
}

.horizon-theme .about-director-page-grid {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
    gap: clamp(2rem, 5vw, 4.5rem);
    align-items: stretch;
}

.horizon-theme .about-director-page-image {
    min-height: 640px;
    overflow: hidden;
    border: 1px solid rgba(18, 50, 104, .10);
    border-radius: 34px;
    background: #ffffff;
    box-shadow: 0 30px 76px rgba(18, 50, 104, .14);
}

.horizon-theme .about-director-page-image img {
    width: 100%;
    height: 100%;
    min-height: 640px;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.horizon-theme .about-director-page-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(2rem, 4vw, 4rem);
    border: 1px solid rgba(18, 50, 104, .10);
    border-radius: 34px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 30px 76px rgba(18, 50, 104, .10);
}

.horizon-theme .about-director-page-intro h2 {
    margin: .85rem 0 .55rem;
    color: #10203c;
    font-size: clamp(2.8rem, 4vw, 4rem) !important;
    line-height: 1;
}

.horizon-theme .about-director-page-intro strong {
    margin-bottom: 1.25rem;
    color: #b27618;
    font-size: 1.35rem;
    font-weight: 900;
}

.horizon-theme .about-director-page-intro p {
    max-width: 760px;
    color: #53617a;
    text-align: left !important;
}

.horizon-theme .about-director-page-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 1.3rem;
}

.horizon-theme .about-director-page-story {
    margin-top: 1.35rem;
    padding: clamp(1.8rem, 4vw, 3rem);
    border: 1px solid rgba(214, 163, 77, .26);
    border-radius: 28px;
    background: linear-gradient(135deg, #fffaf1, #ffffff);
    box-shadow: inset 6px 0 0 #d6a34d, 0 24px 60px rgba(18, 50, 104, .08);
}

.horizon-theme .about-director-page-story p {
    margin: 0;
    color: #4e5c75;
    text-align: left !important;
}

.horizon-theme .about-director-page-story p + p {
    margin-top: 1rem;
}

.contact-page-clean-only .contact-info-only-section {
    background:
        radial-gradient(circle at 10% 20%, rgba(36, 95, 214, .10), transparent 24rem),
        radial-gradient(circle at 92% 12%, rgba(214, 163, 77, .13), transparent 24rem),
        linear-gradient(135deg, #f7fbff, #fff9ef) !important;
}

.contact-page-clean-only .contact-clean-header {
    max-width: 920px;
    margin: 0 auto 2rem;
    text-align: center;
}

.contact-page-clean-only .contact-clean-header h2 {
    margin: .85rem 0 .75rem;
    color: #10203c;
    font-size: clamp(2.4rem, 4vw, 4rem) !important;
    line-height: 1.02;
}

.contact-page-clean-only .contact-clean-header p {
    max-width: 780px;
    margin: 0 auto;
    color: #56627a;
    text-align: center !important;
}

.contact-page-clean-only .contact-info-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.1rem;
}

.contact-page-clean-only .contact-info-card {
    min-height: 292px;
    display: flex;
    flex-direction: column;
    padding: 1.55rem;
    border: 1px solid rgba(18, 50, 104, .11);
    border-radius: 24px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 22px 58px rgba(18, 50, 104, .10);
}

.contact-page-clean-only .contact-info-card span {
    color: #b27618;
    font-size: 1.1rem !important;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.contact-page-clean-only .contact-info-card h3 {
    margin: .85rem 0 .65rem;
    color: #10203c;
    font-size: clamp(1.65rem, 2vw, 1.9rem) !important;
    line-height: 1.12;
    overflow-wrap: anywhere;
}

.contact-page-clean-only .contact-info-card p {
    flex: 1;
	font-size:1.3rem !important;
    margin-bottom: 1rem;
    color: #5b667d;
    text-align: left !important;
}

.contact-page-clean-only .contact-info-card a {
    align-self: flex-start;
    color: #123a7a;
    font-size: 1.25rem !important;
    font-weight: 900;
}

.contact-page-clean-only .contact-agent-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    margin-top: 1.25rem;
    padding: clamp(1.6rem, 3vw, 2.6rem);
    border: 1px solid rgba(214, 163, 77, .30);
    border-radius: 26px;
    background: linear-gradient(135deg, #fffaf1, #ffffff);
    box-shadow: inset 6px 0 0 #d6a34d, 0 22px 58px rgba(18, 50, 104, .09);
}

.contact-page-clean-only .contact-agent-strip span {
    display: block;
    color: #b27618;
    font-size: 1.1rem !important;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.contact-page-clean-only .contact-agent-strip h3 {
    margin: .45rem 0 .45rem;
    color: #10203c;
    font-size: clamp(2rem, 3vw, 3.2rem) !important;
}

.contact-page-clean-only .contact-agent-strip p {
    max-width: 780px;
    margin: 0;
    color: #56627a;
    text-align: left !important;
}

.contact-page-clean-only .contact-clean-agent-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .8rem;
    justify-content: flex-end;
}

.contact-page-clean-only .contact-social-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1.25rem;
    padding: 1.25rem 1.5rem;
    border: 1px solid rgba(18, 50, 104, .10);
    border-radius: 22px;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 18px 44px rgba(18, 50, 104, .08);
}

.contact-page-clean-only .contact-social-strip strong {
    color: #10203c;
    font-size: 1.35rem;
}

.contact-page-clean-only .contact-social-strip div {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    justify-content: flex-end;
}

.contact-page-clean-only .contact-social-strip a {
    padding: .7rem 1rem;
    border: 1px solid rgba(18, 50, 104, .12);
    border-radius: 999px;
    color: #123a7a;
    background: #ffffff;
    font-size: 1.2rem !important;
    font-weight: 900;
}

.contact-page-clean-only .contact-clean-map-section {
    padding-top: clamp(3rem, 5vw, 5rem) !important;
}

.contact-page-clean-only .contact-clean-map .map-copy p {
    text-align: left !important;
}

@media (max-width: 991.98px) {
    .horizon-theme .about-director-page-grid,
    .contact-page-clean-only .contact-info-grid {
        grid-template-columns: 1fr;
    }
    .horizon-theme .about-director-page-image,
    .horizon-theme .about-director-page-image img {
        min-height: 500px;
    }
    .contact-page-clean-only .contact-agent-strip,
    .contact-page-clean-only .contact-social-strip {
        align-items: flex-start;
        flex-direction: column;
    }
    .contact-page-clean-only .contact-clean-agent-actions,
    .contact-page-clean-only .contact-social-strip div {
        justify-content: flex-start;
    }
}

@media (max-width: 575.98px) {
    .horizon-theme p {
        font-size: 1.3rem !important;
    }
    .horizon-theme .about-director-page-image,
    .horizon-theme .about-director-page-image img {
        min-height: 380px;
    }
}

/* =========================================================
   Final About page director clean shot — single professional card
   ========================================================= */
.horizon-theme .about-director-page-section {
    padding-top: clamp(4rem, 7vw, 6rem) !important;
    padding-bottom: clamp(4rem, 7vw, 6rem) !important;
}

.horizon-theme .about-director-single-card {
    overflow: hidden;
    border: 1px solid rgba(18, 50, 104, .10);
    border-radius: 34px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 30px 80px rgba(18, 50, 104, .12);
}

.horizon-theme .about-director-single-top {
    display: flex;
    align-items: stretch;
    gap: 0;
}

.horizon-theme .about-director-single-image {
    flex: 0 0 44%;
    min-height: 660px;
    margin: 0;
    overflow: hidden;
    background: #eef4fb;
}

.horizon-theme .about-director-single-image img {
    width: 100%;
    height: 100%;
    min-height: 660px;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.horizon-theme .about-director-single-content {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(2.4rem, 5vw, 4rem);
    background:
        radial-gradient(circle at 100% 0%, rgba(214, 163, 77, .12), transparent 18rem),
        linear-gradient(135deg, #ffffff, #fffaf1);
}

.horizon-theme .about-director-single-content .eyebrow {
    align-self: flex-start;
}

.horizon-theme .about-director-single-content h2 {
    margin: .9rem 0 .6rem;
    color: #10203c;
    font-size: clamp(3rem, 4vw, 4rem) !important;
    line-height: 1.02;
}

.horizon-theme .about-director-single-content strong {
    display: block;
    margin-bottom: 1.35rem;
    color: #b27618;
    font-size: 1.4rem !important;
    font-weight: 900;
    line-height: 1.35;
}

.horizon-theme .about-director-single-content p,
.horizon-theme .about-director-single-story p {
    color: #4f5d76;
    font-size: 1.3rem !important;
    line-height: 1.78 !important;
    text-align: left !important;
}

.horizon-theme .about-director-single-content p {
    max-width: 800px;
}

.horizon-theme .about-director-single-content p + p,
.horizon-theme .about-director-single-story p + p {
    margin-top: 1rem;
}

.horizon-theme .about-director-single-story {
    padding: clamp(2rem, 4vw, 3rem) clamp(2.2rem, 5vw, 4rem);
    border-top: 1px solid rgba(18, 50, 104, .08);
    background: #ffffff;
    box-shadow: inset 6px 0 0 #d6a34d;
}

.horizon-theme .about-director-single-story p {
    max-width: 1180px;
    margin-right: auto;
    margin-left: auto;
}

@media (max-width: 991.98px) {
    .horizon-theme .about-director-single-top {
        flex-direction: column;
    }

    .horizon-theme .about-director-single-image,
    .horizon-theme .about-director-single-image img {
        min-height: 520px;
    }
}

@media (max-width: 575.98px) {
    .horizon-theme .about-director-single-card {
        border-radius: 24px;
    }

    .horizon-theme .about-director-single-image,
    .horizon-theme .about-director-single-image img {
        min-height: 380px;
    }

    .horizon-theme .about-director-single-content,
    .horizon-theme .about-director-single-story {
        padding: 1.6rem;
    }

    .horizon-theme .about-director-single-content h2 {
        font-size: clamp(2.7rem, 12vw, 4rem) !important;
    }
}

/* =========================================================
   Final About Director layout — heading, full image, content below
   ========================================================= */
.horizon-theme .about-director-page-section {
    padding-top: clamp(4rem, 6vw, 5.5rem) !important;
    padding-bottom: clamp(4rem, 6vw, 5.5rem) !important;
    background:
        radial-gradient(circle at 8% 10%, rgba(36, 95, 214, .08), transparent 24rem),
        radial-gradient(circle at 92% 18%, rgba(214, 163, 77, .12), transparent 24rem),
        linear-gradient(135deg, #f7fbff, #fff9ef) !important;
}

.horizon-theme .about-director-feature {
    max-width: 1280px;
    margin: 0 auto;
}

.horizon-theme .about-director-feature-heading {
    max-width: 1000px;
    margin: 0 auto 1rem;
    text-align: center;
}

.horizon-theme .about-director-feature-heading .eyebrow {
    display: inline-flex;
    justify-content: center;
    color: #b27618;
    font-size: 2rem !important;
    font-weight: 900;
    letter-spacing: .18em;
    text-transform: uppercase;
    text-shadow: 0 8px 22px rgba(178, 118, 24, .25);
}

.horizon-theme .about-director-feature-heading h2 {
    margin: 0 0 .65rem;
    color: #10203c;
    font-size: clamp(2.8rem, 4vw, 4rem) !important;
    line-height: 1.02;
    letter-spacing: -.025em;
    text-align: center;
    text-shadow: 0 12px 30px rgba(16, 32, 60, .22);
}

.horizon-theme .about-director-feature-heading strong {
    display: block;
    color: #b27618;
    font-size: 2rem !important;
    font-weight: 900;
    line-height: 1.35;
    text-align: center;
    text-shadow: 0 8px 20px rgba(178, 118, 24, .20);
}

.horizon-theme .about-director-feature-image {
    width: 100%;
    height: clamp(520px, 50vw, 720px);
    margin: 0;
    overflow: hidden;
    border: 1px solid rgba(18, 50, 104, .10);
    border-radius: 100px 100px 0 0;
    background: #eef4fb;
    box-shadow: 0 28px 76px rgba(18, 50, 104, .14);
}

.horizon-theme .about-director-feature-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center center;
}

.horizon-theme .about-director-feature-story {
    margin-top: 1.8rem;
    padding: clamp(2rem, 4vw, 3.2rem);
    border: 1px solid rgba(214, 163, 77, .24);
    border-left: 6px solid #d6a34d;
    border-radius: 26px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 24px 60px rgba(18, 50, 104, .08);
}

.horizon-theme .about-director-feature-story p {
    max-width: 1180px;
    margin: 0;
    color: #4f5d76;
    font-size: 1.3rem !important;
    line-height: 1.78 !important;
    text-align: justify !important;
}

.horizon-theme .about-director-feature-story p + p {
    margin-top: 1rem;
}

@media (max-width: 991.98px) {
    .horizon-theme .about-director-feature-image {
        height: clamp(420px, 62vw, 560px);
    }
}

@media (max-width: 575.98px) {
    .horizon-theme .about-director-page-section {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .horizon-theme .about-director-feature-heading h2 {
        font-size: clamp(2.6rem, 12vw, 4rem) !important;
    }

    .horizon-theme .about-director-feature-image {
    height: 340px;
    border-radius: 20px 20px 0 0;
}

    .horizon-theme .about-director-feature-story {
        padding: 1.55rem;
        border-radius: 20px;
    }
}

/* =========================================================
   Responsive repair layer
   Keeps desktop styling intact, then simplifies tablet/mobile.
   ========================================================= */
.horizon-theme .home-hero-lead {
    font-size: 1.1em !important;
}

.horizon-theme .hero-title-two-line span {
    font-size: inherit !important;
}

.horizon-theme .horizon-hero-overline b {
    font-size: 1.1em !important;
}

.horizon-theme .services-hero-lead,
.contact-page-clean-only .contact-clean-lead,
.contact-page-clean-only .contact-map-address {
    font-size: 1.3rem !important;
}

.horizon-theme .manifesto-copy-lead,
.horizon-theme .principle-copy {
    font-size: 1.1em !important;
}

.horizon-theme .principle-index {
    font-size: 2rem !important;
}

.horizon-theme .services-manifesto-heading,
.horizon-theme .services-value-heading {
    font-size: 3.5rem !important;
}

.horizon-theme .home-office-heading {
    font-size: 2rem !important;
}

.horizon-theme .home-faq-heading {
    font-size: 50px !important;
}

@media (min-width: 992px) {
    .horizon-theme .luxury-navbar .nav-link,
    .horizon-theme .navbar-nav .nav-link,
    .horizon-theme .luxury-dropdown .dropdown-item {
        font-size: 20px !important;
    }
}

@media (max-width: 991.98px) {
    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }

    .horizon-theme {
        font-size: 18px;
    }

    .horizon-theme *:not(svg):not(path),
    .horizon-theme *::before,
    .horizon-theme *::after {
        font-size: inherit;
        letter-spacing: 0;
    }

    .horizon-theme img,
    .horizon-theme iframe {
        max-width: 100%;
    }

    .horizon-theme .site-header {
        z-index: 1080;
    }

    .horizon-theme .horizon-contact-bar {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        gap: .55rem !important;
        min-height: 34px !important;
        padding: .25rem .55rem !important;
        overflow: hidden !important;
        text-align: center !important;
        line-height: 1.1 !important;
    }

    .horizon-theme .horizon-contact-bar .top-location-left {
        flex: 0 1 auto;
        min-width: 0;
        overflow: hidden;
        color: #10203c;
        font-size: .86rem !important;
        font-weight: 900;
        line-height: 1.1 !important;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .horizon-theme .horizon-contact-bar .contact-cluster {
        flex: 0 0 auto;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 0 !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 0 !important;
        line-height: 1 !important;
        white-space: nowrap;
    }

    .horizon-theme .horizon-contact-bar .contact-cluster a[href^="tel"] {
        display: inline-flex !important;
        align-items: center !important;
        color: #10203c;
        font-size: .9rem !important;
        font-weight: 900;
        line-height: 1 !important;
    }

    .horizon-theme .horizon-contact-bar .contact-cluster a[href^="mailto"],
    .horizon-theme .horizon-contact-bar .header-social-top {
        display: none !important;
    }

    .horizon-theme .horizon-navbar,
    .horizon-theme .luxury-navbar {
        padding: .35rem 0 .45rem !important;
    }

    .horizon-theme .horizon-navbar > .container-fluid,
    .horizon-theme .luxury-navbar > .container-fluid {
        display: flex !important;
        align-items: center !important;
        min-height: 72px !important;
        padding: .45rem .75rem !important;
        border-radius: 16px !important;
    }

    .horizon-theme .horizon-brand,
    .horizon-theme .navbar-brand {
        flex: 1 1 auto;
        max-width: calc(100% - 62px);
        height: auto !important;
        min-width: 0;
        margin: 0 !important;
        padding: 0 !important;
    }

    .horizon-theme .site-logo-mark,
    .horizon-theme .horizon-brand .site-logo-mark {
        width: min(190px, 58vw) !important;
        height: auto !important;
        max-height: 54px !important;
        object-fit: contain !important;
    }

    .horizon-theme .navbar-toggler {
        flex: 0 0 48px;
        width: 48px;
        height: 48px;
        margin-left: .55rem;
        padding: .7rem !important;
        border-radius: 14px !important;
    }

    .horizon-theme .navbar-collapse {
        width: 100%;
        max-height: calc(100vh - 126px);
        min-height: 0 !important;
        margin-top: .55rem;
        padding: .75rem !important;
        overflow-y: auto;
        border: 1px solid rgba(18, 50, 104, .10);
        border-radius: 20px;
        background: rgba(255, 255, 255, .96);
        box-shadow: 0 18px 42px rgba(16, 32, 60, .12);
    }

    .horizon-theme .navbar-nav {
        align-items: stretch !important;
        min-height: 0 !important;
        gap: .18rem !important;
    }

    .horizon-theme .navbar-nav .nav-item {
        display: block !important;
        width: 100%;
        height: auto !important;
    }

    .horizon-theme .navbar-nav .nav-link,
    .horizon-theme .luxury-navbar .nav-link {
        display: flex !important;
        justify-content: center !important;
        width: 100%;
        height: auto !important;
        min-height: 44px;
        padding: .7rem .8rem !important;
        font-size: 1.12rem !important;
        line-height: 1.18 !important;
        white-space: normal !important;
    }

    .horizon-theme .nav-cta {
        width: 100%;
        height: auto !important;
        min-height: 48px;
        margin-top: .35rem;
        padding: .85rem 1rem !important;
        font-size: 1rem !important;
        line-height: 1.1 !important;
        white-space: normal !important;
    }

    .horizon-theme .luxury-dropdown {
        position: static !important;
        max-height: 55vh;
        margin: .15rem 0 .5rem !important;
        overflow-y: auto;
        border-radius: 14px !important;
        box-shadow: none !important;
    }

    .horizon-theme .luxury-dropdown .dropdown-item {
        padding: .62rem .8rem !important;
        font-size: 1rem !important;
        line-height: 1.2 !important;
        white-space: normal;
    }

    .horizon-theme .horizon-home-hero.horizon-services-hero-page {
        min-height: auto !important;
        padding: 2.4rem 0 3rem !important;
        background-position: center top !important;
    }

    .horizon-theme .horizon-hero-grid {
        grid-template-columns: 1fr !important;
        gap: 1.4rem !important;
    }

    .horizon-theme .horizon-hero-copy,
    .horizon-theme .horizon-hero-stage,
    .horizon-theme .horizon-services-hero-page .strategy-card-stage {
        min-height: auto !important;
        padding: 0 !important;
    }

    .horizon-theme .hero-title-two-line,
    .horizon-theme .horizon-hero-copy h1 {
        max-width: 100% !important;
        font-size: clamp(2.45rem, 8vw, 3.35rem) !important;
        line-height: 1.08 !important;
        letter-spacing: 0 !important;
    }

    .horizon-theme .hero-title-two-line span {
        display: inline !important;
        font-size: inherit !important;
        white-space: normal !important;
    }

    .horizon-theme .horizon-hero-overline,
    .horizon-theme .horizon-hero-overline span,
    .horizon-theme .horizon-hero-overline b {
        font-size: .95rem !important;
        line-height: 1.2 !important;
    }

    .horizon-theme .horizon-hero-copy > p,
    .horizon-theme .home-hero-lead,
    .horizon-theme .services-hero-lead,
    .horizon-theme .manifesto-copy-lead,
    .horizon-theme .principle-copy {
        max-width: 100% !important;
        font-size: 1.05rem !important;
        line-height: 1.55 !important;
    }

    .horizon-theme .principle-index {
        font-size: 1.5rem !important;
    }

    .horizon-theme .services-manifesto-heading,
    .horizon-theme .services-value-heading {
        font-size: clamp(2rem, 7vw, 2.75rem) !important;
        line-height: 1.1 !important;
    }

    .horizon-theme .strategy-visual-card {
        min-height: auto !important;
        padding: 1.1rem !important;
        border-radius: 18px !important;
    }

    .horizon-theme .strategy-logo-panel {
        min-height: auto !important;
        margin-bottom: .75rem !important;
    }

    .horizon-theme .strategy-logo-panel img {
        max-height: 96px;
        object-fit: contain;
    }

    .horizon-theme .strategy-visual-card h2 {
        font-size: clamp(1.55rem, 5vw, 2rem) !important;
        line-height: 1.15 !important;
    }

    .horizon-theme .strategy-steps {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: .55rem !important;
    }

    .horizon-theme .strategy-steps article {
        min-height: 0 !important;
        padding: .65rem !important;
    }

    .horizon-theme .horizon-hero-proof {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: .7rem !important;
        margin-top: 1rem !important;
    }

    .horizon-theme .horizon-page-intro,
    .horizon-theme .australian-heritage-banner,
    .horizon-theme .page-hero,
    .contact-us-page .australian-heritage-banner,
    .contact-us-page .page-hero,
    .contact-page-clean-only .australian-heritage-banner,
    .contact-page-clean-only .page-hero {
        min-height: auto !important;
        padding: 3rem 0 !important;
        background-position: center center !important;
    }

    .horizon-theme .heritage-line-art {
        display: none !important;
    }

    .horizon-theme .australian-heritage-banner .page-hero-content h1,
    .horizon-theme .page-hero h1,
    .contact-us-page .australian-heritage-banner .page-hero-content h1,
    .contact-us-page .page-hero h1 {
        max-width: 100% !important;
        font-size: clamp(2.35rem, 8vw, 3.1rem) !important;
        line-height: 1.08 !important;
        letter-spacing: 0 !important;
    }

    .horizon-theme .australian-heritage-banner .page-hero-content p,
    .horizon-theme .page-hero p,
    .contact-us-page .australian-heritage-banner .page-hero-content p,
    .contact-us-page .page-hero p {
        max-width: 100% !important;
        font-size: 1.05rem !important;
        line-height: 1.55 !important;
    }

    .horizon-theme .horizon-page-actions {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: .8rem !important;
        margin-top: 1rem !important;
    }

    .horizon-theme .section-padding {
        padding-top: 3.2rem !important;
        padding-bottom: 3.2rem !important;
    }

    .horizon-theme .horizon-manifesto-grid,
    .horizon-theme .horizon-services-intro,
    .horizon-theme .horizon-review-grid,
    .horizon-theme .horizon-office-grid,
    .horizon-theme .horizon-faq-grid,
    .horizon-theme .interconnected-panel,
    .horizon-theme .interconnected-director,
    .horizon-theme .horizon-contact-booking-grid,
    .horizon-theme .horizon-booking-grid,
    .horizon-theme .horizon-about-story-grid,
    .horizon-theme .horizon-service-overview-grid,
    .horizon-theme .horizon-service-value-grid,
    .horizon-theme .horizon-post-visa-grid,
    .contact-page-clean-only .contact-info-grid,
    .contact-page-clean-only .contact-clean-map,
    .horizon-theme .booking-flow-wrap {
        grid-template-columns: 1fr !important;
    }

    .horizon-theme .interconnected-panel {
        overflow: visible !important;
        gap: 1rem !important;
    }

    .horizon-theme .interconnected-director,
    .horizon-theme .related-pathways {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 1.15rem !important;
    }

    .horizon-theme .interconnected-director img {
        width: min(100%, 260px) !important;
        max-width: 100% !important;
        margin: 0 auto !important;
    }

    .horizon-theme .related-pathways {
        left: auto !important;
        right: auto !important;
    }

    .horizon-theme .related-pathways a {
        align-items: flex-start;
        font-size: 1rem !important;
        line-height: 1.25 !important;
    }

    .horizon-theme .footer-main {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 1.4rem !important;
    }

    .horizon-theme .booking-flow-wrap {
        gap: 1rem !important;
    }

    .horizon-theme .booking-sidebar,
    .horizon-theme .booking-flow-main {
        padding: 1.25rem !important;
    }

    .horizon-theme .booking-flow-main {
        min-height: 0 !important;
    }

    .horizon-theme .booking-sidebar-logo {
        width: 110px !important;
        height: 72px !important;
        object-fit: contain !important;
    }

    .horizon-theme .booking-step-tracker {
        gap: .5rem !important;
    }

    .horizon-theme .booking-step {
        font-size: .95rem !important;
        line-height: 1.15 !important;
    }

    .horizon-theme .booking-choice-card {
        min-height: 0 !important;
        padding: 1.25rem !important;
    }

    .horizon-theme .booking-event-row {
        grid-template-columns: 56px minmax(0, 1fr) !important;
        gap: .8rem !important;
        padding: 1rem !important;
    }

    .horizon-theme .booking-event-icon svg {
        width: 52px !important;
        height: 52px !important;
    }

    .horizon-theme .booking-event-price {
        grid-column: 1 / -1 !important;
        min-width: 0 !important;
        text-align: left !important;
    }

    .horizon-theme .booking-event-arrow {
        display: none !important;
    }

    .horizon-theme .booking-selected-box {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .horizon-theme .booking-form .phone-number-field {
        grid-template-columns: minmax(120px, .75fr) minmax(0, 1fr) !important;
    }

    .contact-page-clean-only .contact-clean-lead,
    .contact-page-clean-only .contact-map-address {
        font-size: 1.05rem !important;
        line-height: 1.55 !important;
    }

    .contact-page-clean-only .contact-clean-card,
    .contact-page-clean-only .contact-agent-strip,
    .contact-page-clean-only .contact-social-strip,
    .contact-page-clean-only .contact-clean-map .map-copy {
        padding: 1.15rem !important;
    }

    .contact-page-clean-only .contact-agent-strip,
    .contact-page-clean-only .contact-social-strip {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .contact-page-clean-only .contact-clean-agent-actions,
    .contact-page-clean-only .contact-social-strip div {
        justify-content: flex-start !important;
        width: 100%;
    }

    .horizon-theme .map-frame,
    .horizon-theme .map-frame iframe,
    .horizon-theme .horizon-office-map,
    .horizon-theme .horizon-office-map iframe {
        min-height: 300px !important;
    }

    .horizon-theme .home-faq-heading {
        font-size: clamp(2rem, 7vw, 2.65rem) !important;
        line-height: 1.12 !important;
    }
}

@media (max-width: 575.98px) {
    .horizon-theme {
        font-size: 16px;
    }

    .horizon-theme .horizon-contact-bar {
        gap: .4rem !important;
        padding: .2rem .45rem !important;
    }

    .horizon-theme .horizon-contact-bar .top-location-left {
        font-size: .76rem !important;
    }

    .horizon-theme .horizon-contact-bar .contact-cluster a[href^="tel"] {
        font-size: .82rem !important;
    }

    .horizon-theme .horizon-navbar > .container-fluid,
    .horizon-theme .luxury-navbar > .container-fluid {
        min-height: 66px !important;
        padding: .4rem .65rem !important;
    }

    .horizon-theme .site-logo-mark,
    .horizon-theme .horizon-brand .site-logo-mark {
        width: min(178px, 56vw) !important;
        max-height: 50px !important;
    }

    .horizon-theme .navbar-toggler {
        flex-basis: 46px;
        width: 46px;
        height: 46px;
    }

    .horizon-theme .horizon-home-hero.horizon-services-hero-page {
        padding: 2rem 0 2.4rem !important;
    }

    .horizon-theme .horizon-hero-overline {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: .45rem !important;
    }

    .horizon-theme .hero-title-two-line,
    .horizon-theme .horizon-hero-copy h1 {
        font-size: clamp(2.2rem, 10vw, 2.85rem) !important;
    }

    .horizon-theme .horizon-hero-proof,
    .horizon-theme .strategy-steps,
    .horizon-theme .booking-selected-box,
    .horizon-theme .footer-main {
        grid-template-columns: 1fr !important;
    }

    .horizon-theme .button-row,
    .horizon-theme .trust-points {
        align-items: stretch !important;
        flex-direction: column !important;
        gap: .75rem !important;
    }

    .horizon-theme .button-row .btn,
    .horizon-theme .button-row .horizon-text-action,
    .horizon-theme .btn {
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    .horizon-theme .horizon-page-intro,
    .horizon-theme .australian-heritage-banner,
    .horizon-theme .page-hero,
    .contact-us-page .australian-heritage-banner,
    .contact-us-page .page-hero,
    .contact-page-clean-only .australian-heritage-banner,
    .contact-page-clean-only .page-hero {
        padding: 2.4rem 0 !important;
    }

    .horizon-theme .australian-heritage-banner .page-hero-content h1,
    .horizon-theme .page-hero h1,
    .contact-us-page .australian-heritage-banner .page-hero-content h1,
    .contact-us-page .page-hero h1 {
        font-size: clamp(2.1rem, 10vw, 2.65rem) !important;
    }

    .horizon-theme .booking-flow-heading.with-change {
        display: grid !important;
        gap: .75rem !important;
    }

    .horizon-theme .booking-event-row {
        grid-template-columns: 1fr !important;
        text-align: left !important;
    }

    .horizon-theme .booking-event-icon {
        justify-content: flex-start !important;
    }

    .horizon-theme .booking-form .phone-number-field {
        grid-template-columns: 1fr !important;
    }

    .horizon-theme .map-frame,
    .horizon-theme .map-frame iframe,
    .horizon-theme .horizon-office-map,
    .horizon-theme .horizon-office-map iframe {
        min-height: 260px !important;
    }
}

@media (max-width: 767.98px) {
    .horizon-theme .horizon-home-hero.horizon-services-hero-page .horizon-hero-stage {
        display: none !important;
    }

    .horizon-theme .horizon-hero-proof {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }

    .horizon-theme .horizon-hero-proof div {
        min-width: 0 !important;
        min-height: 0 !important;
        padding: .75rem .55rem !important;
    }

    .horizon-theme .horizon-hero-proof strong {
        font-size: 1.25rem !important;
    }

    .horizon-theme .horizon-hero-proof span {
        font-size: .86rem !important;
        line-height: 1.25 !important;
    }

    .horizon-theme .horizon-office-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        overflow: hidden !important;
    }

    .horizon-theme .horizon-office-grid > *,
    .horizon-theme .horizon-office-map,
    .horizon-theme .horizon-office-copy,
    .horizon-theme .horizon-office-contact,
    .horizon-theme .horizon-office-contact a {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .horizon-theme .horizon-office-contact a,
    .horizon-theme .horizon-office-contact small,
    .horizon-theme .horizon-office-contact span {
        grid-template-columns: minmax(0, 1fr) !important;
        overflow-wrap: anywhere !important;
        word-break: break-word;
    }

    .horizon-theme .horizon-service-library,
    .horizon-theme .horizon-service-item,
    .horizon-theme .service-card,
    .horizon-theme .service-card-body,
    .horizon-theme .service-card-meta,
    .horizon-theme .service-icon,
    .horizon-theme .feature-grid,
    .horizon-theme .feature-item,
    .horizon-theme .horizon-service-value-grid,
    .horizon-theme .horizon-service-value-grid > * {
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .horizon-theme .service-card,
    .horizon-theme .service-card * ,
    .horizon-theme .feature-item {
        overflow-wrap: anywhere !important;
    }

    .horizon-theme .feature-grid,
    .horizon-theme .feature-grid.light {
        grid-template-columns: 1fr !important;
    }

    .horizon-theme .site-footer,
    .horizon-theme .site-footer p,
    .horizon-theme .site-footer a,
    .horizon-theme .site-footer li {
        font-size: 1rem !important;
        line-height: 1.5 !important;
    }

    .horizon-theme .site-footer h2,
    .horizon-theme .site-footer h3 {
        font-size: 1.25rem !important;
        line-height: 1.2 !important;
    }
}

/* =========================================================
   Desktop typography requested update
   ========================================================= */
@media (min-width: 992px) {
    .horizon-theme .navbar-nav .nav-link,
    .horizon-theme .luxury-navbar .nav-link {
        height: 58px !important;
        padding-right: .72rem !important;
        padding-left: .72rem !important;
        font-size: 25px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    .horizon-theme .luxury-dropdown .dropdown-item {
        font-size: 22px !important;
        line-height: 1.12 !important;
        white-space: normal !important;
    }

    .horizon-theme .nav-cta {
        padding-right: 1.15rem !important;
        padding-left: 1.15rem !important;
        font-size: 1.08rem !important;
        white-space: nowrap !important;
    }

    .horizon-theme .site-logo-mark {
        width: 260px !important;
    }

    .horizon-theme p {
        font-size: max(1.3rem, 20.8px) !important;
        line-height: 1.72 !important;
    }

    .horizon-theme.horizon-theme.horizon-theme p {
        font-size: 1.3rem !important;
        line-height: 1.72 !important;
    }

    .horizon-theme .eyebrow,
    .horizon-theme .horizon-kicker,
    .horizon-theme .horizon-hero-overline,
    .horizon-theme .horizon-hero-overline span,
    .horizon-theme .horizon-hero-overline b,
    .horizon-theme .section-header .eyebrow,
    .horizon-theme .horizon-services-title .eyebrow,
    .horizon-theme .australian-heritage-banner .page-hero-content .eyebrow {
        font-size: 25px !important;
        line-height: 1.14 !important;
        letter-spacing: .08em !important;
    }

    .horizon-theme .hero-title-two-line,
    .horizon-theme .horizon-hero-copy h1,
    .horizon-theme .page-hero h1,
    .horizon-theme .australian-heritage-banner .page-hero-content h1,
    .horizon-theme .section-header h2,
    .horizon-theme .horizon-manifesto-title h2,
    .horizon-theme .horizon-services-intro h2,
    .horizon-theme .horizon-process-lead h2,
    .horizon-theme .horizon-review-heading h2,
    .horizon-theme .horizon-office-copy h2,
    .horizon-theme .horizon-faq-intro h2,
    .horizon-theme .horizon-about-story-copy h2,
    .horizon-theme .horizon-service-overview-copy h2,
    .horizon-theme .horizon-service-value-copy h2,
    .horizon-theme .horizon-post-visa-copy h2,
    .horizon-theme .horizon-contact-intro h2,
    .horizon-theme .horizon-booking-intro h2,
    .horizon-theme .horizon-evidence-grid > div:first-child h2,
    .horizon-theme .horizon-help-intro h2,
    .horizon-theme .horizon-footer-intro h2,
    .horizon-theme .cta-panel h2,
    .horizon-theme .services-manifesto-heading,
    .horizon-theme .services-value-heading,
    .contact-us-page .contact-intelligence-copy h2,
    .contact-us-page .contact-why-heading h2,
    .contact-us-page .contact-services-section .section-header h2,
    .contact-us-page .contact-process-section .section-header h2,
    .contact-page-clean-only .contact-clean-header h2,
    .contact-page-clean-only .contact-clean-map .map-copy h2 {
        max-width: 1120px !important;
        font-size: clamp(3rem, 3.8vw, 4rem) !important;
        line-height: 1.06 !important;
        letter-spacing: 0 !important;
        text-wrap: balance;
    }

    .horizon-theme .hero-title-two-line span {
        font-size: inherit !important;
    }

    .horizon-theme .page-hero-content,
    .horizon-theme .horizon-hero-copy,
    .horizon-theme .section-header,
    .horizon-theme .horizon-manifesto-title,
    .horizon-theme .horizon-services-title,
    .horizon-theme .horizon-process-lead,
    .horizon-theme .horizon-review-heading,
    .horizon-theme .horizon-faq-intro,
    .contact-page-clean-only .contact-clean-header {
        max-width: 1160px !important;
    }

    .horizon-theme .horizon-manifesto-grid,
    .horizon-theme .horizon-service-value-grid {
        grid-template-columns: minmax(620px, 1.35fr) minmax(0, .75fr) !important;
        gap: clamp(1.5rem, 3vw, 3rem) !important;
    }

    .horizon-theme .horizon-review-grid,
    .horizon-theme .horizon-faq-grid {
        grid-template-columns: minmax(560px, .95fr) minmax(0, 1.05fr) !important;
        gap: clamp(1.5rem, 3vw, 3rem) !important;
    }

    .horizon-theme .horizon-office-grid {
        grid-template-columns: minmax(0, .5fr) minmax(720px, 1.5fr) !important;
        gap: clamp(1.5rem, 3vw, 3rem) !important;
    }

    .horizon-theme .horizon-service-overview-grid,
    .horizon-theme .horizon-evidence-grid {
        grid-template-columns: minmax(650px, 1.35fr) minmax(0, .65fr) !important;
        gap: clamp(1.5rem, 3vw, 3rem) !important;
    }

    .horizon-theme .home-office-heading,
    .horizon-theme .home-faq-heading,
    .horizon-theme .services-manifesto-heading,
    .horizon-theme .services-value-heading {
        min-width: 0 !important;
        font-size: 3rem !important;
        line-height: 1.05 !important;
        text-wrap: balance;
    }

    .horizon-theme .horizon-office-copy .home-office-heading {
        font-size: 3rem !important;
        line-height: 1.04 !important;
    }

    .horizon-theme .horizon-pathway-heading h2 {
        max-width: 1120px !important;
        font-size: 3rem !important;
        line-height: 1.08 !important;
        text-wrap: balance;
    }
}

/* =========================================================
   Desktop deep typography enforcement
   ========================================================= */
@media (min-width: 992px) {
    .horizon-theme span {
        font-size: max(1.2rem, 19.2px) !important;
    }

    .horizon-theme .hero-title-two-line span,
    .horizon-theme h1 span,
    .horizon-theme h2 span,
    .horizon-theme h3 span,
    .horizon-theme h4 span,
    .horizon-theme h5 span,
    .horizon-theme h6 span {
        font-size: inherit !important;
    }

    .horizon-theme h1,
    .horizon-theme h2,
    .horizon-theme h3,
    .horizon-theme h4,
    .horizon-theme h5,
    .horizon-theme h6 {
        text-wrap: balance;
        overflow-wrap: normal;
    }

    .horizon-theme .service-card h3,
    .horizon-theme .horizon-values-grid h3,
    .horizon-theme .horizon-benefit-grid h3,
    .horizon-theme .process-card h3,
    .horizon-theme .contact-info-card h3,
    .horizon-theme .booking-choice-title,
    .horizon-theme .booking-event-body strong,
    .horizon-theme .footer-main h2,
    .horizon-theme .related-pathways h3 {
        font-size: clamp(1.55rem, 1.8vw, 2.25rem) !important;
        line-height: 1.08 !important;
        text-wrap: balance;
    }
}

/* =========================================================
   Desktop strict readability pass
   ========================================================= */
@media (min-width: 992px) {
    body.horizon-theme.horizon-theme span {
        font-size: max(25px, 19.2px) !important;
    }

    body.horizon-theme.horizon-theme .hero-title-two-line span,
    body.horizon-theme.horizon-theme h1 span,
    body.horizon-theme.horizon-theme h2 span,
    body.horizon-theme.horizon-theme h3 span,
    body.horizon-theme.horizon-theme h4 span,
    body.horizon-theme.horizon-theme h5 span,
    body.horizon-theme.horizon-theme h6 span {
        font-size: inherit !important;
    }

    .horizon-theme .horizon-services-section .horizon-service-library,
    .horizon-theme .horizon-service-library {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: clamp(1rem, 1.6vw, 1.4rem) !important;
    }

    .horizon-theme .horizon-services-section .service-card h3.service-icon,
    .horizon-theme .horizon-services-section .service-card-featured .service-card-body h3,
    .horizon-theme .service-card h3.service-icon {
        max-width: 100% !important;
        min-height: 0 !important;
        font-size: clamp(1.24rem, 1.28vw, 1.68rem) !important;
        line-height: 1.05 !important;
        text-wrap: balance;
    }

    .horizon-theme .premium-accordion .accordion-header {
        line-height: 1 !important;
    }

    .horizon-theme .premium-accordion .accordion-button {
        padding: .82rem 1rem !important;
        font-size: 1.2rem !important;
        line-height: 1.15 !important;
    }

    .horizon-theme .horizon-about-story-grid {
        grid-template-columns: minmax(680px, 1.25fr) minmax(0, .75fr) !important;
        gap: clamp(1.5rem, 3vw, 3rem) !important;
    }

    .horizon-theme .horizon-about-story-copy h2 {
        max-width: 780px !important;
        font-size: 3rem !important;
        line-height: 1.04 !important;
    }
}

@media (min-width: 992px) {
    .horizon-theme .horizon-services-section .horizon-service-library,
    .horizon-theme .horizon-service-library {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .horizon-theme .horizon-services-section .service-card h3.service-icon,
    .horizon-theme .horizon-services-section .service-card-featured .service-card-body h3,
    .horizon-theme .service-card h3.service-icon {
        font-size: clamp(1.55rem, 1.72vw, 2.18rem) !important;
        line-height: 1.04 !important;
    }
}

@media (min-width: 1300px) {
    .horizon-theme .horizon-about-story-grid {
        grid-template-columns: minmax(860px, 1.6fr) minmax(280px, .55fr) !important;
    }

    .horizon-theme .horizon-about-story-copy h2 {
        max-width: 920px !important;
    }
}

@media (min-width: 992px) and (max-width: 1299.98px) {
    .horizon-theme .horizon-about-story-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .horizon-theme .horizon-about-story-copy h2 {
        max-width: 100% !important;
        font-size: 2.85rem !important;
    }
}

@media (min-width: 992px) and (max-width: 1299.98px) {
    .horizon-theme .horizon-manifesto-grid,
    .horizon-theme .horizon-services-intro,
    .horizon-theme .horizon-process-lead,
    .horizon-theme .horizon-review-grid,
    .horizon-theme .horizon-office-grid,
    .horizon-theme .horizon-faq-grid,
    .horizon-theme .interconnected-panel,
    .horizon-theme .interconnected-director,
    .horizon-theme .horizon-contact-booking-grid,
    .horizon-theme .horizon-booking-grid,
    .horizon-theme .horizon-service-overview-grid,
    .horizon-theme .horizon-service-value-grid,
    .horizon-theme .horizon-post-visa-grid,
    .horizon-theme .horizon-evidence-grid,
    .horizon-theme .horizon-help-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .horizon-theme .horizon-pathway-heading,
    .horizon-theme .horizon-pathway-heading h2,
    .horizon-theme .horizon-process-lead h2,
    .horizon-theme .horizon-review-heading h2,
    .horizon-theme .horizon-office-copy h2,
    .horizon-theme .horizon-faq-intro h2,
    .horizon-theme .horizon-service-overview-copy h2,
    .horizon-theme .horizon-service-value-copy h2,
    .horizon-theme .horizon-post-visa-copy h2,
    .horizon-theme .horizon-evidence-grid h2,
    .horizon-theme .horizon-help-intro h2,
    .horizon-theme .interconnected-director h2 {
        width: 100% !important;
        max-width: 100% !important;
    }

    .horizon-theme .horizon-pathway-heading h2 {
        white-space: normal !important;
    }

    .horizon-theme .horizon-pathway-heading h2 br {
        display: none !important;
    }

    .horizon-theme .horizon-review-heading,
    .horizon-theme .horizon-help-intro {
        position: static !important;
    }

    .horizon-theme .horizon-review-list article {
        grid-template-columns: 55px minmax(0, 1fr) minmax(145px, 175px) !important;
        gap: 1rem !important;
    }

    .horizon-theme .horizon-review-list article > div,
    .horizon-theme .horizon-review-list article > p {
        min-width: 0 !important;
    }

    .horizon-theme .interconnected-director,
    .horizon-theme .related-pathways {
        width: 100% !important;
        max-width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .horizon-theme .horizon-services-section .horizon-service-library,
    .horizon-theme .horizon-service-library {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .horizon-theme .horizon-services-section .service-card h3.service-icon,
    .horizon-theme .horizon-services-section .service-card-featured .service-card-body h3,
    .horizon-theme .service-card h3.service-icon {
        font-size: clamp(1.55rem, 2.2vw, 2rem) !important;
    }
}

/* =========================================================
   Requested home/about/footer polish
   ========================================================= */
body.horizon-theme .horizon-pathway-heading h2 em,
body.horizon-theme .horizon-services-intro h2 em,
body.horizon-theme .horizon-services-title h2 em {
    -webkit-background-clip: border-box !important;
    -webkit-text-fill-color: currentColor !important;
    background: none !important;
    background-clip: border-box !important;
    color: inherit !important;
    font: inherit !important;
    font-size: 1em !important;
    font-style: normal !important;
    font-weight: inherit !important;
    line-height: inherit !important;
}

.horizon-theme .horizon-principles .principle-copy {
    font-weight: 400 !important;
}

.horizon-theme .navbar-brand.footer-logo,
.horizon-theme .footer-logo {
    width: clamp(360px, 28vw, 470px) !important;
    height: clamp(125px, 9vw, 165px) !important;
    min-height: clamp(125px, 9vw, 165px) !important;
    max-height: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: .65rem 1rem !important;
}

.horizon-theme .footer-site-logo,
.horizon-theme .footer-logo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

@media (min-width: 1300px) {
    .horizon-theme .horizon-about-story-grid {
        grid-template-columns: minmax(900px, 1.7fr) minmax(220px, .42fr) !important;
    }

    .horizon-theme .horizon-about-story-copy h2 {
        max-width: 1000px !important;
        font-size: clamp(3rem, 3.2vw, 3.65rem) !important;
        line-height: 1.02 !important;
    }
}

@media (min-width: 992px) and (max-width: 1299.98px) {
    .horizon-theme .horizon-about-story-copy h2 {
        font-size: clamp(2.6rem, 3.5vw, 3rem) !important;
        line-height: 1.04 !important;
    }
}

@media (min-width: 992px) {
    body.horizon-theme .horizon-about-story-grid {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    body.horizon-theme .horizon-about-story-copy h2 {
        width: 100% !important;
        max-width: none !important;
        font-size: clamp(3rem, 3.4vw, 4rem) !important;
        line-height: 1.04 !important;
        text-wrap: balance !important;
    }

    body.horizon-theme .horizon-about-story-image {
        width: min(100%, 820px) !important;
        justify-self: center !important;
    }
}

@media (max-width: 767.98px) {
    .horizon-theme .footer-logo {
        width: min(100%, 340px) !important;
        height: 120px !important;
    }
}

/* =========================================================
   Desktop dropdown compact polish
   ========================================================= */
@media (min-width: 992px) {
    body.horizon-theme .nav-item.dropdown .dropdown-menu,
    body.horizon-theme .nav-item.dropdown .dropdown-menu[data-bs-popper],
    body.horizon-theme .luxury-dropdown.dropdown-menu {
        --bs-dropdown-spacer: .12rem;
        width: max-content !important;
        min-width: max-content !important;
        max-width: calc(100vw - 2rem) !important;
        margin-top: .12rem !important;
        margin-bottom: 0 !important;
        padding: .3rem !important;
        border-radius: 14px !important;
    }

    body.horizon-theme .luxury-dropdown .dropdown-item {
        width: 100% !important;
        padding: .36rem .8rem !important;
        font-size: 22px !important;
        line-height: 1.08 !important;
        white-space: nowrap !important;
    }

    body.horizon-theme .luxury-dropdown li:last-child .dropdown-item {
        margin-bottom: 0 !important;
    }
}

/* =========================================================
   Desktop hero credential single-line polish
   ========================================================= */
@media (min-width: 992px) {
    body.horizon-theme .horizon-hero-overline {
        width: max-content !important;
        max-width: 100% !important;
        flex-wrap: nowrap !important;
        white-space: nowrap !important;
    }

    body.horizon-theme .horizon-hero-overline b {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        max-width: none !important;
        white-space: nowrap !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    body.horizon-theme .horizon-hero-overline,
    body.horizon-theme .horizon-hero-overline b {
        font-size: clamp(1.15rem, 2vw, 25px) !important;
        letter-spacing: .06em !important;
    }
}

/* =========================================================
   Requested desktop alignment polish
   ========================================================= */
@media (min-width: 992px) {
    body.horizon-theme .horizon-hero-overline {
        align-items: center !important;
        gap: .55rem !important;
        margin-bottom: 1.15rem !important;
    }

    body.horizon-theme .horizon-hero-overline span {
        display: inline-block !important;
        width: max-content !important;
        max-width: 100% !important;
        font-size: 25px !important;
        line-height: 1.08 !important;
        letter-spacing: .08em !important;
        white-space: nowrap !important;
    }

    body.horizon-theme .horizon-hero-overline b {
        display: inline-flex !important;
        width: max-content !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
        font-size: 18px !important;
        line-height: 1.08 !important;
        letter-spacing: .08em !important;
        white-space: nowrap !important;
    }

    body.horizon-theme .horizon-home-hero.horizon-services-hero-page .horizon-hero-overline:has(> span) {
        display: inline-grid !important;
        grid-template-columns: max-content !important;
        justify-items: start !important;
        align-items: start !important;
        width: max-content !important;
        max-width: 100% !important;
        gap: .38rem !important;
        white-space: normal !important;
    }

    body.horizon-theme .horizon-home-hero.horizon-services-hero-page .horizon-hero-overline:has(> span) span,
    body.horizon-theme .horizon-home-hero.horizon-services-hero-page .horizon-hero-overline:has(> span) b {
        min-width: 0 !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }

    body.horizon-theme .nav-item.dropdown .dropdown-menu,
    body.horizon-theme .nav-item.dropdown .dropdown-menu[data-bs-popper],
    body.horizon-theme .luxury-dropdown.dropdown-menu {
        margin-bottom: .25rem !important;
        padding-bottom: .45rem !important;
    }

    body.horizon-theme .horizon-office-grid {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: clamp(1.5rem, 2.5vw, 2.75rem) !important;
        align-items: stretch !important;
    }

    body.horizon-theme .horizon-office-map,
    body.horizon-theme .horizon-office-copy {
        min-width: 0 !important;
    }

    body.horizon-theme .horizon-services-section .horizon-services-intro {
        grid-template-columns: minmax(0, 4fr) minmax(0, 2fr) !important;
        gap: clamp(1.5rem, 3vw, 3rem) !important;
        align-items: start !important;
    }

    body.horizon-theme .horizon-services-section .horizon-services-title h2 {
        max-width: 1060px !important;
        font-size: clamp(3rem, 3.55vw, 4rem) !important;
        line-height: 1.03 !important;
        white-space: normal !important;
        text-wrap: balance !important;
    }

    body.horizon-theme .horizon-services-section .horizon-services-title h2 br {
        display: initial !important;
    }

    body.horizon-theme .horizon-services-section .horizon-services-title h2 em {
        display: inline !important;
        font: inherit !important;
        font-size: inherit !important;
        line-height: inherit !important;
        white-space: normal !important;
    }

    body.horizon-theme .horizon-service-value-grid {
        grid-template-columns: minmax(0, 4fr) minmax(0, 2fr) !important;
        gap: clamp(1.5rem, 3vw, 3rem) !important;
        align-items: start !important;
    }

    body.horizon-theme .horizon-service-value-grid > * {
        min-width: 0 !important;
    }

    body.horizon-theme .horizon-service-value .feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 1rem !important;
        align-items: stretch !important;
    }

    body.horizon-theme .horizon-service-value .feature-item {
        min-width: 0 !important;
        height: 100% !important;
        line-height: 1.45 !important;
    }
}

/* =========================================================
   Requested services value row polish
   ========================================================= */
@media (min-width: 992px) {
    body.horizon-theme .horizon-office-copy {
        padding: clamp(.5rem, 5vw, 0rem) !important;
    }

    body.horizon-theme .horizon-service-value-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: clamp(1.4rem, 2.4vw, 2.4rem) !important;
    }

    body.horizon-theme .horizon-service-value-copy {
        width: 100% !important;
        max-width: none !important;
    }

    body.horizon-theme .horizon-service-value-copy h2,
    body.horizon-theme .horizon-service-value-copy p {
        max-width: none !important;
    }

    body.horizon-theme .horizon-service-value .feature-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 1rem !important;
        width: 100% !important;
    }

    body.horizon-theme .horizon-service-value-copy .services-value-heading {
        width: 100% !important;
        max-width: none !important;
        font-size: clamp(2.55rem, 3.05vw, 3.45rem) !important;
        line-height: 1.04 !important;
        white-space: nowrap !important;
        text-wrap: nowrap !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    body.horizon-theme .horizon-service-value .feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* =========================================================
   Requested pathway guide card polish
   ========================================================= */
@media (min-width: 992px) {
    body.horizon-theme .horizon-services-section .horizon-services-intro {
        grid-template-columns: minmax(0, 3fr) minmax(380px, 2fr) !important;
        gap: clamp(.9rem, 1.4vw, 1.6rem) !important;
        align-items: start !important;
    }

    body.horizon-theme .horizon-services-section .horizon-services-guide {
        display: grid !important;
        grid-template-columns: 96px minmax(0, 1fr) !important;
        gap: .9rem 1.15rem !important;
        align-items: start !important;
        justify-self: start !important;
        width: min(100%, 500px) !important;
        padding: 1rem 1rem !important;
    }

    body.horizon-theme .horizon-services-section .horizon-services-guide > div:not(.horizon-pathway-compass) {
        min-width: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: .9rem !important;
    }

    body.horizon-theme .horizon-services-section .horizon-pathway-compass {
        width: 92px !important;
        height: 92px !important;
        align-self: start !important;
        margin-top: .1rem !important;
    }

    body.horizon-theme .horizon-services-section .horizon-pathway-compass i {
        width: 44px !important;
        height: 44px !important;
    }

    body.horizon-theme .horizon-services-section .horizon-services-guide p {
        max-width: none !important;
        margin: 0 !important;
        font-size: clamp(1.14rem, 1.1vw, 1.25rem) !important;
        line-height: 1.5 !important;
        letter-spacing: 0 !important;
        word-spacing: normal !important;
        text-align: left !important;
        text-align-last: left !important;
        text-wrap: pretty !important;
    }

    body.horizon-theme .horizon-services-section .horizon-services-guide .horizon-text-action {
        align-self: flex-start !important;
        margin-top: .15rem !important;
        font-size: 1.1rem !important;
        line-height: 1.35 !important;
        text-align: left !important;
    }
}

/* =========================================================
   Requested mobile principle and booking sidebar polish
   ========================================================= */
.horizon-theme .booking-sidebar-logo {
    width: clamp(150px, 12vw, 210px) !important;
    height: clamp(92px, 7vw, 128px) !important;
    max-width: 100% !important;
    object-fit: contain !important;
}

.horizon-theme .booking-sidebar-contact {
    gap: .85rem !important;
    width: 100% !important;
    min-width: 0 !important;
}

.horizon-theme .booking-contact-line {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    gap: .65rem !important;
    align-items: start !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

.horizon-theme .booking-contact-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    margin-top: .12rem !important;
    color: #0d2a4d !important;
}

.horizon-theme .booking-contact-icon svg {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
}

.horizon-theme .booking-sidebar-contact .booking-contact-line > span:last-child {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    hyphens: auto !important;
    font-size: clamp(1.05rem, 1.05vw, 1.18rem) !important;
    line-height: 1.45 !important;
}

@media (max-width: 991.98px) {
    .horizon-theme .horizon-principles article,
    .horizon-theme .horizon-principles article + article {
        align-items: flex-start !important;
        justify-content: flex-start !important;
        padding: 1.5rem 0 !important;
        text-align: left !important;
    }

    .horizon-theme .horizon-principles .principle-index {
        width: 100% !important;
        display: block !important;
        margin: 0 0 1.2rem !important;
        padding: 0 !important;
        text-align: left !important;
    }

    .horizon-theme .booking-sidebar-logo {
        width: min(210px, 70vw) !important;
        height: auto !important;
    }
}
