@import url('https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,200italic,300,300italic,regular,italic,600,600italic,700,700italic,900,900italic&amp;subset=latin,latin-ext');

:root {
    --cf-navy: #27316e;
    --cf-pale-blue: #eff4ff;
    --cf-light-blue: #5cc7f4;
    --cf-green: #6fba39;
    --cf-text: #111;
}

body {
    color: var(--cf-text);
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 17px;
    line-height: 1.5;
}

h1, h2, .h1, .h2 {
    color: var(--cf-navy);
    font-family: 'Old Standard TT', serif;
    font-weight: 400;
}

h1, .h1 { font-size: clamp(2.25rem, 4vw, 3.45rem); }
h2, .h2 { font-size: clamp(2rem, 3.2vw, 3rem); }
h3, .h3 {
    color: var(--cf-navy);
    font-family: 'Source Sans Pro', sans-serif;
    font-size: clamp(1.6rem, 2.2vw, 2.125rem);
    font-weight: 300;
    line-height: 1.2;
}

a { color: var(--cf-navy); }
a:hover { color: var(--cf-light-blue); }

.site-header__utility {
    background: #f5f5f5;
    border-bottom: 1px solid rgba(39, 49, 110, .1);
    color: var(--cf-navy);
    font-size: .94rem;
}

.site-header__utility .module { padding: .3rem 0; }
.site-header__utility p { margin: 0; }

.site-header__navigation {
    background: #fff;
    min-height: 82px;
}

.site-header .navbar-brand {
    color: var(--cf-navy);
    font-family: 'Old Standard TT', serif;
    font-size: 2rem;
}

.site-header .navbar-nav { gap: .25rem; }
.site-header .navbar-nav .nav-link {
    color: var(--cf-navy);
    font-size: 1.08rem;
    font-weight: 600;
    padding: .75rem .85rem;
}
.site-header .navbar-nav .nav-link:hover,
.site-header .navbar-nav .active > .nav-link { color: var(--cf-light-blue); }

#content_bottom { background: var(--cf-pale-blue); }
footer.footer {
    background: var(--cf-navy);
    color: #fff;
    padding: 2rem 0 10rem;
}
footer.footer h3,
footer.footer a,
footer.footer li,
footer.footer p { color: #fff; }
footer.footer a:hover { color: var(--cf-light-blue); }
footer.footer ul { list-style: none; padding-left: 0; }
footer.footer li { line-height: 1.75; }

.clifford-fry-richtext p,
.clifford-fry-richtext li { font-size: 1rem; line-height: 1.5; }
.clifford-fry-richtext .bigbutton,
.clifford-fry-richtext .btn-primary {
    background: var(--cf-green);
    border: 0;
    border-radius: .2rem;
    color: #fff;
    display: inline-block;
    font-weight: 600;
    padding: .8rem 1.25rem;
    text-decoration: none;
}
.clifford-fry-richtext .bigbutton:hover,
.clifford-fry-richtext .btn-primary:hover { background: #60a031; color: #fff; }

.clifford-fry-video-hero { min-height: 500px; overflow: hidden; position: relative; }
.clifford-fry-video-hero > video { height: 100%; inset: 0; object-fit: cover; position: absolute; width: 100%; }
.clifford-fry-video-hero__overlay { align-items: center; background: rgba(0, 0, 0, .42); color: #fff; display: flex; inset: 0; min-height: 500px; position: relative; }
.clifford-fry-video-hero__overlay h1 { color: #fff; font-size: clamp(2.5rem, 5vw, 4rem); }
.bf-editor-element--testimonialcarousel { background: var(--cf-navy); color: #fff; padding: 2rem 4rem; }
.bf-editor-element--testimonialcarousel .blockquote { font-size: clamp(1.25rem, 2.5vw, 1.9rem); font-style: italic; }
.bf-editor-element--accordion .accordion-item { border-color: rgba(39, 49, 110, .2); }
.bf-editor-element--accordion .accordion-button { color: var(--cf-navy); font-weight: 600; }
.bf-editor-element--accordion .accordion-button:not(.collapsed) { background: var(--cf-pale-blue); color: var(--cf-navy); }
.bf-editor-element--accordion .accordion-button:focus { box-shadow: 0 0 0 .25rem rgba(92, 199, 244, .25); }

@media (max-width: 991.98px) {
    .site-header__navigation { min-height: 64px; }
    .site-header .navbar-nav { padding: .75rem 0; }
}

/* Clifford Fry legacy visual system recreated with Bootstrap markup. */
.cf-site-header { background: #fff; }
.cf-site-header .cf-topbar__content,.cf-primary-navigation .container { width: 1600px; max-width: 100%; }
.cf-topbar__content { align-items: center; display: flex; justify-content: flex-end; min-height: 41px; }
.cf-topbar__content .module { width: 100%; }
.cf-utility-links { align-items: center; display: flex; gap: 55px; justify-content: flex-end; }
.cf-utility-links ul { display: flex; gap: 1.25rem; list-style: none; margin: 0; padding: 0; }
.cf-utility-links a { color: var(--cf-navy); font-size: 1rem; text-decoration: underline; }
.cf-utility-links a:hover { color: var(--cf-light-blue); }
.cf-social-links { display: flex; gap: .65rem; }
.cf-social-links img { border-radius: 2px; height: 32px; width: 32px; }
.cf-primary-navigation { min-height: 112px; padding: 0; }
.cf-site-logo { align-items: center; display: flex; height: 111px; margin-right: auto; padding: 0; }
.cf-site-logo img { height: auto; max-height: 76px; max-width: 360px; }
.cf-primary-navigation .navbar-collapse { justify-content: end; align-self: stretch; }
.cf-primary-navigation .mod-menu { align-items: stretch; display: flex; height: 100%; margin: 0; padding: 0; }
.cf-primary-navigation .mod-menu > li { border-right: 1px solid #ececec; display: flex; margin: 0; }
.cf-primary-navigation .mod-menu > li:first-child { border-left: 1px solid #ececec; }
.cf-primary-navigation .mod-menu > li > a { align-items: center; color: var(--cf-navy); display: flex; font-size: 1rem; font-weight: 400; padding: 0 .8rem; text-decoration: none; }
.cf-primary-navigation .mod-menu > li.current > a,
.cf-primary-navigation .mod-menu > li.active > a { background: var(--cf-navy); color: #fff; font-weight: 600; }
.cf-primary-navigation .mod-menu > li > a:hover { background: #f1f1f1; color: var(--cf-navy); }
.cf-primary-navigation .mod-menu .mod-menu__sub { background: #efefef; border: 0; border-radius: 0; min-width: 17rem; padding: 0; }
.cf-primary-navigation .mod-menu .mod-menu__sub li { border-bottom: 2px solid #fff; }
.cf-primary-navigation .mod-menu .mod-menu__sub a { color: var(--cf-navy); display: block; font-size: .95rem; padding: .75rem 1rem; }

.menu-home main { margin: 0; }
.menu-home .clifford-fry-video-hero,
.menu-home .clifford-fry-video-hero__overlay { min-height: 650px; }
.menu-home .clifford-fry-video-hero__overlay { align-items: flex-start; background: rgba(0,0,0,.4); text-align: center; }
.menu-home .clifford-fry-video-hero__overlay .container { max-width: 1200px; }
body.menu-home .clifford-fry-video-hero__overlay h1 {
  font-family: 'Old Standard TT', serif !important;
  font-size: 55px;
  font-weight: 300;
  margin-top: 120px;
}
body.menu-home .clifford-fry-video-hero__overlay p {
  color: #fff;
  font-family: 'Source Sans Pro', sans-serif !important;
  font-size: 26px;
  font-weight: 400;
  margin: 20px 0;
}
.menu-home .clifford-fry-video-hero__overlay img { width: auto; }
.cf-home-content { color: var(--cf-text); margin-top: -295px; position: relative; z-index: 2; }
.cf-home-panels { display: grid; grid-template-columns: repeat(3, 1fr); }
.cf-home-panel { min-height: 330px; padding: 30px 10%; text-align: center; }
.cf-home-panel h3 { color: #fff !important; font-family: 'Old Standard TT', serif !important; font-size: 40px; font-weight: 400; line-height: 1.2; margin: 0 0 1.25rem; }
.cf-home-panel h3 span { color: var(--cf-light-blue); }
.menu-home #scroll { scroll-margin-top: 1rem; }
.cf-home-panel a { background: rgba(0,0,0,.4); color: #fff; display: block; font-size: 26px; line-height: 36px; padding: 60px 20px; text-decoration: underline; }
.cf-home-panel a:hover { background: rgba(0,0,0,.6); color: #fff; }
.cf-home-intro { background: #fff; margin: 0 auto; max-width: 1200px; padding: 50px 15px 28px; text-align:center;}
.cf-home-intro h3 { color: var(--cf-navy); font-size: 34px; font-weight: 300; line-height: 38px; }
.cf-home-intro p { font-size: 17px; line-height: 1.5; }
.cf-button { background: var(--cf-green); border-radius: 2px; color: #fff; display: inline-block; font-size: 20px; font-weight: 600; padding: 15px 25px; text-decoration: none; }
.cf-button:hover { background: #60a031; color: #fff; }
.cf-home-why { background: url('../../../../../images/cliffj3/different-bg.jpg') right -500px center/cover no-repeat; box-sizing: border-box; min-height: 650px; padding: 50px max(30px, calc((100% - 1200px) / 2)); }
.cf-home-why > a { display: block; float: right; margin-right: 45px; padding-left: 15px; }
.cf-home-why > a img { display: block; height: 400px; max-width: none; }
.cf-home-why__brochure { display: block; height: 400px; max-width: none; }
.cf-home-why h3 { color: #fff !important; font-family: 'Old Standard TT', serif !important; font-size: 3.5rem !important; font-weight: 400 !important; line-height: 1.05 !important; margin: 0 0 30px !important; }
.cf-home-why ul { list-style: none; margin: 0; max-width: 55%; padding: 0; }
.cf-home-why li { color: #fff !important; font-family: 'Source Sans Pro', sans-serif !important; font-size: 24px !important; font-weight: 400 !important; line-height: 30px !important; margin: 25px 0; }
.cf-home-why li::before { color: var(--cf-green); content: '✓'; font-family: Arial, sans-serif; font-size: 20px; padding-right: 10px; }
.menu-home .bf-editor-element--testimonialcarousel { background: #fff; color: var(--cf-text); padding: 50px 7.5%; }
.menu-home .bf-editor-element--testimonialcarousel .blockquote { font-size: 30px; font-style: italic; font-weight: 300; line-height: 45px; }
.menu-home .bf-editor-element--testimonialcarousel .blockquote-footer { color: var(--cf-text) !important; }
.menu-home .bf-editor-element--testimonialcarousel .carousel-control-next-icon,
.menu-home .bf-editor-element--testimonialcarousel .carousel-control-prev-icon { filter: invert(1); }
.bf-editor-element--testimonialcarousel .carousel-item { display: none; }
.bf-editor-element--testimonialcarousel .carousel-item.active { display: block; }
.menu-home .bf-editor-element--locationmaps { display: none; }
.cf-home-clients { background: linear-gradient(to bottom left,#002759,#27316e); padding: 10px 15px 30px; }
.cf-home-clients__inner { align-items: center; display: flex; margin: auto; max-width: 1100px; }
.cf-home-clients__copy { padding: 20px; width: 50%; }
.cf-home-clients__copy h3 { color: #fff !important; font-size: 42px; font-weight: 100; line-height: 44px; }
.cf-home-clients__copy ul { list-style: none; margin: 0; padding: 0; }
.cf-home-clients__copy li { color: #fff; font-weight: 300; line-height: 30px; }
.cf-home-clients__copy li::before { color: var(--cf-green); content: '→'; font-size: 14px; padding-right: 10px; }
.cf-home-clients__copy span { color: var(--cf-light-blue); }
.cf-home-clients__map { max-width: 50%; }
.cf-home-questions { background: var(--cf-pale-blue); padding: 30px max(15px, calc((100% - 1200px) / 2)) 0; }
.cf-home-questions__inner { background: none; min-height: 250px; padding-right: 42%; }
.cf-home-questions h3 { color: var(--cf-navy); font-size: 42px; font-weight: 300; line-height: 1.1; }
.cf-home-questions p { font-size: 24px; line-height: 1.45; }
.cf-site-footer { background: var(--cf-navy); padding: 30px 0 0; }
.cf-site-footer > .container,
.cf-site-footer__bottom > .container { max-width: 1150px; padding-left: 15px; padding-right: 15px; }
@media (max-width: 1199.98px) {
  .cf-site-footer > .container,
  .cf-site-footer__bottom > .container { max-width: 960px; }
}
@media (max-width: 991.98px) {
  .cf-site-footer > .container,
  .cf-site-footer__bottom > .container { max-width: 720px; }
}
@media (max-width: 767.98px) {
  .cf-site-footer > .container,
  .cf-site-footer__bottom > .container { max-width: 540px; }
}
@media (max-width: 575.98px) {
  .cf-site-footer > .container,
  .cf-site-footer__bottom > .container { max-width: none; }
}
.cf-site-footer__columns { display: grid; gap: 30px; grid-template-columns: repeat(3,1fr); }
.cf-site-footer__columns .module h3 { color: #fff !important; display: block !important; font-family: 'Source Sans Pro', sans-serif !important; font-size: 28px !important; font-weight: 300 !important; line-height: 1.2 !important; margin: 0 0 15px !important; text-transform: uppercase; }
.cf-site-footer .cf-site-footer__columns h3 { color: #fff !important; }
.cf-site-footer__columns p,.cf-site-footer__columns a,.cf-site-footer__columns li { color: #fff; font-size: 17px; font-weight: 300; line-height: 28px; }
.cf-site-footer a { text-decoration: none !important; }
.cf-site-footer__columns ul { list-style: none; margin: 0; padding: 0; }
.cf-site-footer__columns a:hover { color: var(--cf-light-blue); }
.cf-site-footer__bottom { padding: 25px 0 10px; }
.cf-footer-bottom { align-items: center; color: #fff; display: grid; grid-template-columns: repeat(3,1fr); gap: 30px; }
.cf-footer-bottom p { color: #fff; font-size: 14px; }
.cf-footer-bottom a { color: #fff; }
.cf-footer-bottom__social { text-align: right; }
.cf-footer-bottom__social img { margin: 5px; vertical-align: middle; }
/* Homepage testimonials: centred copy with the three live-style dot controls. */
.menu-home .bf-editor-element--testimonialcarousel { min-height: 241px; padding-bottom: 68px; text-align: center; }
.menu-home .bf-editor-element--testimonialcarousel .carousel-inner { min-height: 150px; }
.menu-home .bf-editor-element--testimonialcarousel .carousel-item,
.menu-home .bf-editor-element--testimonialcarousel .carousel-item-next,
.menu-home .bf-editor-element--testimonialcarousel .carousel-item-prev { text-align: center; }
.menu-home .bf-editor-element--testimonialcarousel .carousel-item-next,
.menu-home .bf-editor-element--testimonialcarousel .carousel-item-prev { display: block; }
.menu-home .bf-editor-element--testimonialcarousel .blockquote { margin: 0 auto 15px; max-width: 1050px; text-align: center; }
.menu-home .bf-editor-element--testimonialcarousel .blockquote > div,
.menu-home .bf-editor-element--testimonialcarousel .blockquote p { text-align: center; }
.menu-home .bf-editor-element--testimonialcarousel .blockquote-footer { text-align: center; }
.menu-home .cf-testimonial-indicators { align-items: center; bottom: 22px; display: flex; gap: 12px; justify-content: center; margin: 0; }
.menu-home .cf-testimonial-indicators [data-bs-target] { background: #b7b7b7; border: 0; border-radius: 50%; height: 18px; margin: 0; opacity: 1; padding: 0; width: 18px; }
.menu-home .cf-testimonial-indicators .active { background: #7c7c7c; }
/* The base template stylesheet loads after this file, so retain the legacy
   body font with a more specific selector. */
body.site { font-family: 'Source Sans Pro', sans-serif; }
@font-face {
  font-display: block;
  font-family: 'Clifford Fry IcoMoon';
  src: url('../fonts/IcoMoon.woff') format('woff');
}
.cf-breadcrumbs { background: #fff; border-bottom: 1px solid #e6e6e6; }
.cf-breadcrumbs .breadcrumb { background: transparent; font-size: 15px; margin: 0; padding: 13px 0; }
.cf-breadcrumbs a { color: var(--cf-navy); }
.cf-page-hero { align-items: center; background-color: var(--cf-navy); background-position: center; background-size: cover; display: flex; min-height: 274px; position: relative; }
.cf-page-hero::before { background: rgba(24, 31, 72, .2); content: ''; inset: 0; position: absolute; }
.cf-page-hero .container { position: relative; }
.cf-page-hero h1 { color: #fff; font-size: clamp(2.2rem, 4vw, 3.6rem); margin: 0; text-shadow: 0 1px 2px rgba(0,0,0,.25); }
.cf-page-hero + .bf-editor-element--richtext { margin: 45px auto 65px; max-width: 1200px; padding: 0 15px; }
.cf-our-people { background: linear-gradient(90deg, rgba(39,49,110,.96) 0%, rgba(39,49,110,.91) 51%, rgba(39,49,110,.14) 100%), url('../../../../../images/cliffj3/our-people.jpg') center/cover; color: #fff; min-height: 350px; padding: 58px 0; }
.cf-our-people__copy { max-width: 615px; }
.cf-our-people h2 { color: #fff; font-size: 3rem; }
.cf-our-people p { font-size: 20px; line-height: 1.5; }
.cf-accreditations { background: #fff; padding: 52px 0; text-align: center; }
.cf-accreditations h2 { font-size: 3rem; margin-bottom: 30px; }
.cf-accreditations__logos { align-items: center; display: flex; gap: 65px; justify-content: center; list-style: none; margin: 0 0 22px; padding: 0; }
.cf-accreditations__logos img { height: auto; max-height: 120px; max-width: 400px; }
@media (max-width: 767.98px) {
  .cf-page-hero { min-height: 190px; }
  .cf-page-hero + .bf-editor-element--richtext { margin: 30px auto 45px; }
  .cf-our-people { background-image: linear-gradient(rgba(39,49,110,.93),rgba(39,49,110,.93)), url('../../../../../images/cliffj3/our-people.jpg'); padding: 42px 0; }
  .cf-accreditations__logos { flex-direction: column; gap: 25px; }
}

/* Inner-page shell: mirrors the legacy Gantry showcase, breadcrumb and
   lower-module bands while keeping their values editable in BF Editor. */
#main { position: relative; }
body:not(.menu-home) .cf-breadcrumbs {
  background: #fff;
  border: 0;
  left: 0;
  position: absolute;
  top: 325px;
  width: 100%;
  z-index: 3;
}
body:not(.menu-home) .cf-breadcrumbs .breadcrumb { padding: 16px 15px; }
/* This page has no hero banner, so breadcrumbs stay above the article. */
body.menu-privacy-policy .cf-breadcrumbs {
  position: relative;
  top: auto;
}
body:not(.menu-home) .cf-breadcrumbs .container { max-width: 1200px; }
/* Match the article's Bootstrap container and remove the extra list gutter. */
body.menu-privacy-policy .cf-breadcrumbs .container { max-width: 1140px; }
@media (min-width: 1400px) { body.menu-privacy-policy .cf-breadcrumbs .container { max-width: 1320px; } }
@media (max-width: 1199.98px) { body.menu-privacy-policy .cf-breadcrumbs .container { max-width: 960px; } }
@media (max-width: 991.98px) { body.menu-privacy-policy .cf-breadcrumbs .container { max-width: 720px; } }
@media (max-width: 767.98px) { body.menu-privacy-policy .cf-breadcrumbs .container { max-width: 540px; } }
@media (max-width: 575.98px) { body.menu-privacy-policy .cf-breadcrumbs .container { max-width: none; } }
body.menu-privacy-policy .cf-breadcrumbs ol.mod-breadcrumbs.breadcrumb { padding-left: 0 !important; }
body:not(.menu-home) .cf-breadcrumbs a,
body:not(.menu-home) .cf-breadcrumbs span {
  color: var(--cf-navy);
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 15px;
}
body:not(.menu-home) .cf-breadcrumbs ol.mod-breadcrumbs {
  list-style: none !important;
  margin: 0;
  padding-left: 15px !important;
}
body:not(.menu-home) .cf-breadcrumbs .mod-breadcrumbs__divider {
  align-items: center;
  color: #ccc;
  display: flex;
  font-size: 15px;
  list-style: none;
  margin-right: 10px;
}
body:not(.menu-home) .cf-breadcrumbs .mod-breadcrumbs__divider .icon-location { display: inline-block; }
body:not(.menu-home) .cf-breadcrumbs .mod-breadcrumbs__divider .icon-location::before {
  color: #27316e;
  content: '\63';
  font-family: 'Clifford Fry IcoMoon' !important;
  font-weight: 400;
}
body:not(.menu-home) .cf-breadcrumbs .breadcrumb {
  --bs-breadcrumb-divider: '';
  align-items: center;
  display: flex;
}
body:not(.menu-home) .cf-breadcrumbs .breadcrumb-item + .breadcrumb-item::before {
  color: #ccc;
  content: '\f105';
  float: none;
  font-family: 'Font Awesome 6 Free';
  font-size: 13px;
  font-weight: 900;
  padding: 0 10px;
}
body:not(.menu-home) .cf-breadcrumbs .breadcrumb-item.active span { color: #ccc; }
body:not(.menu-home) .cf-page-hero,
body:not(.menu-home) .cf-our-people,
body:not(.menu-home) .cf-accreditations {
  margin-left: calc(50% - (100vw - 0px) / 2);
  width: calc(100vw - 0px);
}
body:not(.menu-home) .cf-page-hero {
  align-items: flex-end;
  background-position: center top;
  border-bottom: 3px solid var(--cf-navy);
  box-sizing: border-box;
  min-height: 313px;
}
body:not(.menu-home) .cf-page-hero::before { display: none; }
body:not(.menu-home) .cf-page-hero .container {
  max-width: none;
  padding: 0 20px 5px;
  width: 100%;
}
body:not(.menu-home) .cf-page-hero h1 {
  background: rgba(255,255,255,.7);
  color: var(--cf-navy);
  display: inline-block;
  font-family: 'Old Standard TT', serif;
  font-size: 55px;
  font-weight: 400;
  line-height: 40px;
  margin: 0;
  padding: 20px;
  text-shadow: none;
  white-space: nowrap;
}
body:not(.menu-home) .cf-page-hero + .bf-editor-element--richtext {
  margin-bottom: 162px;
  margin-top: 75px;
}
body.menu-services .cf-page-hero + .bf-editor-element--richtext,
body.menu-accounting-services-for-many-industries .cf-page-hero + .bf-editor-element--richtext { margin-bottom: 55px; }
/* Legacy inner-page typography. */
body:not(.menu-home) .clifford-fry-richtext { color: #111; }
body:not(.menu-home) .clifford-fry-richtext p,
body:not(.menu-home) .clifford-fry-richtext li {
  color: #111;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 17px;
  font-weight: 400;
  line-height: 25.5px;
}
body:not(.menu-home) .clifford-fry-richtext h1 {
  color: var(--cf-navy);
  font-family: 'Old Standard TT', serif;
  font-size: 38px;
  font-weight: 400;
  line-height: 40px;
}
body:not(.menu-home) .clifford-fry-richtext h3 {
  color: var(--cf-navy);
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 28px;
  font-weight: 300;
  line-height: 34px;
}
body:not(.menu-home) .cf-services-grid {
  margin: 0 auto 65px;
  max-width: 1150px;
  padding: 0 15px;
}
body:not(.menu-home) .cf-questions-cta {
  background: var(--cf-pale-blue) url('../../../../../images/cliffj3/stairs-home.jpg') right bottom / auto 100% no-repeat;
  margin-left: calc(50% - (100vw - 0px) / 2);
  min-height: 0;
  padding: 38px 0;
  width: calc(100vw - 0px);
}
body:not(.menu-home) .cf-questions-cta .container { max-width: 1200px; }
body:not(.menu-home) .cf-questions-cta__copy { max-width: 58%; }
body:not(.menu-home) .cf-questions-cta h2 {
  color: var(--cf-navy);
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 42px;
  font-weight: 300;
  line-height: 1.1;
  margin: 0 0 15px;
}
/* Setting up a New Business page. */
body.menu-setting-up-a-new-business { overflow-x: clip; }
.menu-setting-up-a-new-business .clifford-fry-richtext { margin: 61px 0 45px; max-width: 100%; padding: 0; width: auto; }
.menu-setting-up-a-new-business .clifford-fry-richtext h2.intro {
  color: var(--cf-navy);
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 42px;
  font-weight: 400;
  line-height: 46.2px;
  margin: 0 0 15px;
  padding: 0 0 15px;
}
.menu-setting-up-a-new-business .clifford-fry-richtext .so-many-questions {
  color: var(--cf-light-blue);
  font-size: 24px;
  font-weight: 300;
  line-height: 36px;
}
.menu-setting-up-a-new-business .clifford-fry-richtext .always-here-to-help {
  font-size: 24px;
  font-weight: 300;
  line-height: 36px;
}
.menu-setting-up-a-new-business .clifford-fry-richtext .black-serif { font-family: 'Old Standard TT', serif; }
.menu-setting-up-a-new-business .clifford-fry-richtext .blue-serif { color: var(--cf-navy); font-family: 'Old Standard TT', serif; }
.menu-setting-up-a-new-business .guide-image { min-height: 0; padding-left: 30px; }
.menu-setting-up-a-new-business .guide-box {
  background: var(--cf-light-blue);
  margin: 65px -20px 0 0;
  padding: 25px 10px 15px;
}
.menu-setting-up-a-new-business .guide-box .guide-text {
  color: #111;
  font-size: 22px;
  font-weight: 300;
  line-height: 26.4px;
  margin: 0 0 15px;
}
.cf-services-included {
  background: rgba(39,49,110,.05);
  border: 1px solid rgba(39,49,110,.2);
  margin: 61px 10px 10px 3px;
  padding: 5px 15px 10px;
}
.cf-services-included h2 {
  color: var(--cf-navy);
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 28px;
  font-weight: 300;
  line-height: 34px;
  margin: 20px 0 10px;
  padding: 0 0 5px;
}
.cf-services-included ul { list-style: none; margin: 0; padding: 0 0 0 25px; }
.cf-services-included li { color: #111; font-size: 17px; line-height: 34px; position: relative; }
.cf-services-included li::before { color: var(--cf-green); content: '✓'; left: -24px; position: absolute; }
body.menu-setting-up-a-new-business .cf-services-included ul { list-style: disc; }
body.menu-setting-up-a-new-business .cf-services-included li::before { content: none; }
/* Contact page. */
.menu-contact-us-for-advice-or-support .clifford-fry-richtext { margin: 61px 0 45px; max-width: 100%; padding: 0; width: auto; }
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) { overflow-x: clip; }
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-contact-request { margin: 61px 0 30px 35px; width: calc(100% - 35px); }
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .clifford-fry-richtext p { margin: 0 0 15px; }
.menu-contact-us-for-advice-or-support .clifford-fry-richtext .contact-heading { color: var(--cf-navy); font-family: 'Source Sans Pro', sans-serif; font-size: 32px; font-weight: 400; line-height: 48px; }
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .clifford-fry-richtext p.intro { color: var(--cf-navy); font-family: 'Source Sans Pro', sans-serif; font-size: 28px; font-weight: 300; line-height: 34px; margin: 20px 0 10px; }
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-contact-request h2 { margin: 20px 0 10px; }
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-contact-request__form label { font-size: 14px; font-weight: 400; line-height: 20px; margin: 10px 0 5px; }
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-contact-request__form input:not([type="hidden"]),
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-contact-request__form select,
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-contact-request__form textarea { font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px; font-weight: 400; line-height: 20px; color: #6e6e6e; margin: 0 0 9px; }
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-contact-request__form select { line-height: normal; }
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-contact-request__form button { font-weight: 100; font-size: 24px; line-height: 20px; }
.cf-contact-request {
  background: rgba(39, 49, 110, .1);
  box-sizing: border-box;
  color: #111;
  font-family: 'Source Sans Pro', sans-serif;
  margin: 61px 3px 30px;
  padding: 20px;
  width: 100%;
}
.cf-contact-request h2 {
  background: transparent;
  color: var(--cf-navy);
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 28px;
  font-weight: 300;
  line-height: 34px;
  margin: 0 0 15px;
  padding: 0;
}
.cf-contact-request > p { font-size: 17px; line-height: 25.5px; margin: 0 0 15px; }
.cf-contact-request__form label { color: #111; display: block; font-family: 'Source Sans Pro', sans-serif; font-size: 17px; margin: 10px 0 0; }
.cf-contact-request__form label span { color: #f00; }
.cf-contact-request__form input,.cf-contact-request__form select,.cf-contact-request__form textarea { border: 1px solid #ccc; border-radius: 0; box-sizing: border-box; display: block; font: inherit; margin-top: 4px; padding: 8px; width: 100%; }
.cf-contact-request__form button { background: var(--cf-navy); border: 0; border-radius: 3px; color: #fff; font: 300 24px 'Source Sans Pro',sans-serif; margin-top: 10px; padding: 15px; width: 100%; }
.cf-contact-request__form button:hover { background: rgba(39, 49, 110, .9); }
.cf-rsform .formNoError { display: none; }
.cf-rsform .formError,.cf-rsform .formRed { color: #b3261e; }
.cf-rsform .formValidation .formError { display: block; font-size: 14px; margin-top: 4px; }
.cf-rsform .rsform-error { border-color: #b3261e; }
.cf-rsform-captcha { margin-top: 18px; }
.cf-rsform input[type="hidden"] { display: none; }
.cf-rsform .cf-contact-request__form select { background-color: #fff; }
@media (max-width:767.98px){.menu-contact-us-for-advice-or-support .clifford-fry-richtext{margin-left:0;margin-top:35px;width:auto}.cf-contact-request{margin:10px}}
body.menu-setting-up-a-new-business .cf-questions-cta {
  background-image: none;
  margin-top: 35px;
  min-height: 0;
}
body.menu-setting-up-a-new-business .cf-breadcrumbs .container,
body.menu-setting-up-a-new-business .com-content-article__body > section:nth-child(2) > .container,
body.menu-accounting-for-contractors .cf-breadcrumbs .container,
body.menu-accounting-for-contractors .com-content-article__body > section:nth-child(2) > .container,
body:has(.cf-office-box) .cf-breadcrumbs .container,
body:has(.cf-office-box) .com-content-article__body > section:nth-child(2) > .container,
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-breadcrumbs .container,
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .com-content-article__body > section:nth-child(2) > .container {
  max-width: 1150px;
  padding-left: 15px;
  padding-right: 15px;
}
body.menu-setting-up-a-new-business .cf-breadcrumbs ol.mod-breadcrumbs,
body.menu-accounting-for-contractors .cf-breadcrumbs ol.mod-breadcrumbs,
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-breadcrumbs ol.mod-breadcrumbs { padding-left: 0 !important; }
@media (max-width: 1199.98px) {
  body.menu-setting-up-a-new-business .cf-breadcrumbs .container,
  body.menu-setting-up-a-new-business .com-content-article__body > section:nth-child(2) > .container,
  body.menu-accounting-for-contractors .cf-breadcrumbs .container,
  body.menu-accounting-for-contractors .com-content-article__body > section:nth-child(2) > .container,
  body:has(.cf-office-box) .cf-breadcrumbs .container,
body:has(.cf-office-box) .com-content-article__body > section:nth-child(2) > .container,
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-breadcrumbs .container,
  body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .com-content-article__body > section:nth-child(2) > .container { max-width: 960px; }
}
@media (max-width: 991.98px) {
  body.menu-setting-up-a-new-business .cf-breadcrumbs .container,
  body.menu-setting-up-a-new-business .com-content-article__body > section:nth-child(2) > .container,
  body.menu-accounting-for-contractors .cf-breadcrumbs .container,
  body.menu-accounting-for-contractors .com-content-article__body > section:nth-child(2) > .container,
  body:has(.cf-office-box) .cf-breadcrumbs .container,
body:has(.cf-office-box) .com-content-article__body > section:nth-child(2) > .container,
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-breadcrumbs .container,
  body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .com-content-article__body > section:nth-child(2) > .container { max-width: 720px; }
  body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .com-content-article__body > section:nth-child(2) > .container > .row > div { flex: 0 0 100%; width: 100%; }
  body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-contact-request { margin: 15px 0 30px; width: 100%; }
}
@media (max-width: 767.98px) {
  body.menu-setting-up-a-new-business .cf-breadcrumbs .container,
  body.menu-setting-up-a-new-business .com-content-article__body > section:nth-child(2) > .container,
  body.menu-accounting-for-contractors .cf-breadcrumbs .container,
  body.menu-accounting-for-contractors .com-content-article__body > section:nth-child(2) > .container,
  body:has(.cf-office-box) .cf-breadcrumbs .container,
body:has(.cf-office-box) .com-content-article__body > section:nth-child(2) > .container,
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-breadcrumbs .container,
  body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .com-content-article__body > section:nth-child(2) > .container { max-width: 540px; }
}
@media (max-width: 575.98px) {
  body.menu-setting-up-a-new-business .cf-breadcrumbs .container,
  body.menu-setting-up-a-new-business .com-content-article__body > section:nth-child(2) > .container,
  body.menu-accounting-for-contractors .cf-breadcrumbs .container,
  body.menu-accounting-for-contractors .com-content-article__body > section:nth-child(2) > .container,
  body:has(.cf-office-box) .cf-breadcrumbs .container,
body:has(.cf-office-box) .com-content-article__body > section:nth-child(2) > .container,
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-breadcrumbs .container,
  body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .com-content-article__body > section:nth-child(2) > .container { max-width: none; }
}
/* Contractors use the same uninterrupted banner and content spacing as other inner pages. */
body.menu-accounting-for-contractors { overflow-x: clip; }
body.menu-accounting-for-contractors .cf-page-hero { margin-top: 0; }
body.menu-accounting-for-contractors .cf-page-hero h1 { line-height: 1.1; max-width: 100%; white-space: normal; }
body.menu-accounting-for-contractors .clifford-fry-richtext { margin: 61px 0 45px; width: auto; max-width: 100%; }
body.menu-accounting-for-contractors .clifford-fry-richtext p.intro { font-family: 'Source Sans Pro', sans-serif; }
body.menu-accounting-for-contractors .cf-services-included { margin-left: 35px; }
body.menu-accounting-for-contractors .cf-services-included h2 { font-size: 22px; line-height: 34px; }
body.menu-accounting-for-contractors .cf-services-included ul { list-style: disc; }
body.menu-accounting-for-contractors .cf-services-included li::before { content: none; }
body.menu-accounting-for-contractors .cf-services-included a,
body.menu-accounting-for-contractors .cf-services-included a:hover,
body.menu-accounting-for-contractors .cf-services-included a:focus { color: #111; text-decoration: none; }
body.menu-accounting-for-contractors .cf-questions-cta { background-image: none; margin-top: 45px; }
body.menu-services .cf-questions-cta { background-image: none; }
body:is(.menu-accounting-and-auditing, .menu-business-services, .menu-sage-accounting-support, .menu-xero-accounting-support, .menu-quickbooks-accounting-support) .cf-questions-cta { background-image: none; }
@media (max-width: 767.98px) {
  .menu-setting-up-a-new-business .clifford-fry-richtext { margin-left: 0; margin-top: 35px; width: auto; }
  body.menu-accounting-for-contractors .clifford-fry-richtext { margin-top: 35px; }
  body.menu-accounting-for-contractors .cf-services-included { margin-left: 0; margin-right: 0; margin-top: 15px; }
  .cf-services-included { margin-left: 10px; margin-top: 10px; }
  body.menu-setting-up-a-new-business .cf-questions-cta { margin-top: 0; min-height: 0; }
  body.menu-accounting-for-contractors .cf-page-hero { margin-top: 0; }
  .menu-setting-up-a-new-business .clifford-fry-richtext h2.intro { font-size: 32px; line-height: 38px; }
  .menu-setting-up-a-new-business .guide-box { margin-right: 0; }
}
body:not(.menu-home) .cf-questions-cta p { color: #111; font-size: 24px; line-height: 1.45; margin: 0 0 20px; }
@media (max-width: 767.98px) {
  body:not(.menu-home) .cf-questions-cta { background-image: none; margin-left: 0; width: auto; }
  body:not(.menu-home) .cf-questions-cta__copy { max-width: none; }
}
/* FAQ page: legacy two-column content/form layout and accordion treatment. */
body.menu-faqs .cf-page-hero { margin-left: calc(50% - 50vw); width: 100vw; }
body.menu-faqs .cf-breadcrumbs .container { padding-left: 0; }
body.menu-faqs .cf-breadcrumbs ol.mod-breadcrumbs { padding-left: 0 !important; }
body.menu-faqs .clifford-fry-richtext { margin: 55px 0 20px; max-width: none; padding: 0; }
body.menu-faqs .bf-editor-element--accordion { margin: 0 0 65px; }
body.menu-faqs .cf-contact-request { margin: 55px 0 65px 35px; width: calc(100% - 35px); }
body.cf-industry-detail .clifford-fry-richtext,
body.menu-tax-returns .clifford-fry-richtext { margin: 61px 0 45px; padding: 0; max-width: 100%; width: auto; }
body.cf-industry-detail .clifford-fry-richtext h3 { color: var(--cf-navy); font-family: 'Source Sans Pro', sans-serif; font-size: 28px; font-weight: 300; line-height: 34px; }
@media (max-width: 767.98px) {
  body.cf-industry-detail .clifford-fry-richtext { margin-top: 35px; }
}
body.menu-faqs .bf-editor-element--accordion .accordion-item { background: transparent; border: 0; border-radius: 0; }
body.menu-faqs .bf-editor-element--accordion .accordion-header { margin: 0 !important; }
body.menu-faqs .bf-editor-element--accordion .accordion-button,
body.menu-faqs .bf-editor-element--accordion .accordion-button:not(.collapsed) {
  background: #eee !important;
  border-bottom: 1px solid #ddd;
  border-radius: 0 !important;
  box-shadow: none;
  color: #27316e !important;
  font-family: 'Source Sans Pro', sans-serif !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  line-height: 28px !important;
  padding: 10px 20px;
}
body.menu-faqs .bf-editor-element--accordion .accordion-button::after { display: none; }
body.menu-faqs .bf-editor-element--accordion .accordion-button:hover { background: #ddd !important; }
body.menu-faqs .bf-editor-element--accordion .accordion-button:focus { box-shadow: none; }
body.menu-faqs .bf-editor-element--accordion .accordion-body { padding: 0 20px 20px; }
body.menu-faqs .bf-editor-element--accordion .accordion-body p { padding-top: 20px; }
body.menu-faqs .cf-contact-request__form select[name="best_day"],
body.menu-faqs .cf-contact-request__form select[name="best_time"],
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-contact-request__form select[name="best_day"],
body:is(.menu-contact-us-for-advice-or-support, .cf-industry-detail, .menu-tax-returns) .cf-contact-request__form select[name="best_time"] { background-color: #fff; }

/* Restore office pages with legacy typography and office sidebars. */
body:has(.cf-office-box) { overflow-x: clip; }
body:has(.cf-office-box) .clifford-fry-richtext { margin: 61px 0 45px; padding: 0; width: auto; max-width: 100%; }
body.menu-business-services .clifford-fry-richtext h2,
body:has(.cf-office-box) .clifford-fry-richtext h2 { color: var(--cf-navy); font-family: 'Source Sans Pro', sans-serif; font-size: 42px; font-weight: 400; line-height: 46.2px; margin: 0 0 15px; padding-bottom: 15px; }
body:has(.cf-office-box) .clifford-fry-richtext p { margin: 0 0 15px; }
body.menu-business-services .clifford-fry-richtext p.intro,
body:has(.cf-office-box) .clifford-fry-richtext p.intro { color: var(--cf-navy); font-family: 'Source Sans Pro', sans-serif; font-size: 28px; font-weight: 300; line-height: 34px; margin: 20px 0 10px; }
body:has(.cf-office-box) .clifford-fry-richtext:has(.cf-office-box) { margin-left: 35px; }
body:has(.cf-office-box) .cf-office-box { border: 1px solid rgba(39,49,110,.2); background-color: rgba(39,49,110,.05); padding: 5px 15px 10px; }
body:has(.cf-office-box) .cf-office-box h3 { margin: 20px 0 10px; padding-bottom: 5px; }
body:has(.cf-office-box) .cf-office-box ul { list-style: disc; margin: 0 0 10px; padding: 0 0 0 25px; }
body:has(.cf-office-box) .cf-office-box ul.ticks { list-style: disc; margin: 0 0 10px; padding: 0 0 0 25px; }
body:has(.cf-office-box) .cf-office-box ul.ticks li { line-height: 34px; position: relative; }
body:has(.cf-office-box) .cf-office-box ul.ticks li::before { content: none; }
body:has(.cf-office-box) .cf-office-box a,
body:has(.cf-office-box) .cf-office-box a:hover,
body:has(.cf-office-box) .cf-office-box a:focus { color: #000; text-decoration: none; }
body:has(.cf-office-box) .cf-breadcrumbs ol.mod-breadcrumbs { padding-left: 0 !important; }
@media (max-width: 767.98px) {
  body:has(.cf-office-box) .clifford-fry-richtext { margin-top: 35px; }
  body:has(.cf-office-box) .clifford-fry-richtext:has(.cf-office-box) { margin: 15px 0 30px; }
}
/* Business guide: download and introduction followed by nine independent sections. */
body.menu-guide-for-new-businesses { overflow-x: clip; }
body.menu-guide-for-new-businesses .clifford-fry-richtext { margin: 55px auto 30px; max-width: 1150px; padding: 0; display: flow-root; }
body.menu-guide-for-new-businesses .clifford-fry-richtext p { margin-bottom: 15px; }
body.menu-guide-for-new-businesses .clifford-fry-richtext .intro-lightblue { color: var(--cf-light-blue); font-size: 28px; font-weight: 300; line-height: 34px; margin: 20px 0 10px; }
body.menu-guide-for-new-businesses .guide-questions p { line-height: 34px; }
body.menu-guide-for-new-businesses .disclaimer-text { margin-left: 13px; text-indent: -13px; }
body.menu-guide-for-new-businesses main li { margin-top: 5px; }
body.menu-guide-for-new-businesses .bf-editor-element--accordion { --bs-accordion-border-radius: 0; --bs-accordion-inner-border-radius: 0; margin: 0 auto 65px; max-width: 1150px; }
body.menu-guide-for-new-businesses .accordion-item { background: transparent; border: 0; border-radius: 0; }
body.menu-guide-for-new-businesses .accordion-header { margin: 0; }
body.menu-guide-for-new-businesses .accordion-button,
body.menu-guide-for-new-businesses .accordion-button:not(.collapsed) { background: #eee; border-bottom: 1px solid #ddd; border-radius: 0; box-shadow: none; color: var(--cf-navy); font-family: 'Source Sans Pro', sans-serif; font-size: 18px; font-weight: 300; line-height: 26px; padding: 10px 20px; }
body.menu-guide-for-new-businesses .accordion-button::after { display: none; }
body.menu-guide-for-new-businesses .accordion-button:hover { background: #ddd; }
body.menu-guide-for-new-businesses .accordion-button:focus-visible { outline: 2px solid var(--cf-navy); outline-offset: -2px; }
body.menu-guide-for-new-businesses .accordion-body { color: #111; font-size: 17px; line-height: 25.5px; padding: 0 20px 20px; }
body.menu-guide-for-new-businesses .accordion-body p { margin: 0 0 15px; }
body.menu-guide-for-new-businesses .accordion-body h4 { font-size: 24px; font-weight: 300; line-height: 28px; margin: 35px 0 10px; }
@media (max-width: 575.98px) {
  body.menu-guide-for-new-businesses .guide-download img { float: none !important; display: block; height: auto; max-width: 100%; margin: 0 auto 25px; padding-right: 0 !important; }
  body.menu-guide-for-new-businesses .cf-page-hero h1 { max-width: 100%; white-space: normal; }
}
/* Key Dates uses Joomla content rather than the former Gantry sidebar modules. */
body.menu-key-tax-dates { overflow-x: clip; }
body.menu-key-tax-dates .cf-page-hero { margin-left: calc(50% - 50vw); width: 100vw; }
body.menu-key-tax-dates .cf-breadcrumbs .container { max-width: 1140px; padding-left: 12px; padding-right: 12px; }
@media (min-width: 1200px) {
  body.menu-key-tax-dates .cf-breadcrumbs .container,
  body.menu-key-tax-dates .com-content-article__body > section:nth-child(2) > .container {
    max-width: 1200px;
    padding-left: 25px;
    padding-right: 25px;
  }
}

@media (max-width: 1199.98px) { body.menu-key-tax-dates .cf-breadcrumbs .container { max-width: 960px; } }
@media (max-width: 991.98px) { body.menu-key-tax-dates .cf-breadcrumbs .container { max-width: 720px; } }
@media (max-width: 767.98px) { body.menu-key-tax-dates .cf-breadcrumbs .container { max-width: 540px; } }
@media (max-width: 575.98px) { body.menu-key-tax-dates .cf-breadcrumbs .container { max-width: none; } }
body.menu-key-tax-dates .cf-breadcrumbs ol.mod-breadcrumbs,
body.menu-key-tax-dates .cf-breadcrumbs .breadcrumb { padding-left: 0 !important; }
body.menu-key-tax-dates .clifford-fry-richtext { margin: 55px 0 65px; max-width: none; padding: 0; }
body.menu-key-tax-dates .cf-questions-cta { background-image: none; }
body.menu-guides-publications .cf-questions-cta,
body.menu-guide-for-new-businesses .cf-questions-cta,
body.has-guideslist .cf-questions-cta,
body.has-guidedetail .cf-questions-cta { background-image: none; }
body.has-guideslist .cf-questions-cta,
body.has-guidedetail .cf-questions-cta { padding-top: 67px; padding-bottom: 67px; }
body.menu-guides-publications .cf-breadcrumbs,
body.menu-guide-for-new-businesses .cf-breadcrumbs,
body.has-guideslist .cf-breadcrumbs,
body.has-guidedetail .cf-breadcrumbs {
  padding: 12px max(15px, calc((100% - 1150px) / 2)) 18px;
}
body.has-guideslist .cf-breadcrumbs .breadcrumb,
body.has-guidedetail .cf-breadcrumbs .breadcrumb { padding-left: 0; padding-right: 0; }
body.has-guideslist .cf-breadcrumbs ol.mod-breadcrumbs,
body.has-guidedetail .cf-breadcrumbs ol.mod-breadcrumbs { padding-left: 0 !important; }
/* Guide details share the article and footer's responsive container width. */
body.has-guidedetail { --cf-guide-container-width: none; overflow-x: clip; }
body.has-guidedetail .cf-page-hero {
  margin-left: calc(50% - 50vw);
  width: 100vw;
}
body.has-guidedetail .cf-breadcrumbs { padding-left: 0; padding-right: 0; }
body.has-guidedetail .cf-breadcrumbs > nav {
  width: 100%;
  max-width: var(--cf-guide-container-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: 12px;
  padding-right: 12px;
}
body.has-guidedetail .cf-questions-cta .container { max-width: var(--cf-guide-container-width); }
@media (max-width: 767.98px) {
  body.has-guidedetail .cf-breadcrumbs > nav,
  body.has-guidedetail .cf-questions-cta .container { padding-left: 0; padding-right: 0; }
}
@media (min-width: 576px) {
  body.has-guidedetail { --cf-guide-container-width: 540px; }
}
@media (min-width: 768px) {
  body.has-guidedetail { --cf-guide-container-width: 720px; }
  body.has-guidedetail .cf-breadcrumbs > nav { position: relative; left: -18px; }
}
@media (min-width: 992px) {
  body.has-guidedetail { --cf-guide-container-width: 960px; }
}
@media (min-width: 1200px) {
  body.has-guidedetail { --cf-guide-container-width: 1140px; }
}
@media (min-width: 1400px) {
  body.has-guidedetail { --cf-guide-container-width: 1320px; }
}
body.has-guideslist .cf-page-hero h1,
body.has-guidedetail .cf-page-hero h1 { font-size: 52px; }
/* Guide listings use the same responsive inset as its article column. */
body.has-guideslist { --cf-listing-container-width: none; }
body.has-guideslist .cf-breadcrumbs li:has(a[href$="/guides-publications/category"]) { display: none; }
body.has-guideslist .cf-breadcrumbs { padding-left: 0; padding-right: 0; }
body.has-guideslist .cf-breadcrumbs > nav { box-sizing: border-box; width: 100%; max-width: var(--cf-listing-container-width); margin-left: auto; margin-right: auto; padding-left: 12px; padding-right: 12px; }
@media (max-width: 767.98px) { body.has-guideslist .cf-breadcrumbs > nav { padding-left: 0; padding-right: 0; } }
@media (min-width: 576px) { body.has-guideslist { --cf-listing-container-width: 540px; } }
@media (min-width: 768px) {
  body.has-guideslist { --cf-listing-container-width: 720px; }
  body.has-guideslist .cf-breadcrumbs > nav { position: relative; left: -18px; }
}
@media (min-width: 992px) { body.has-guideslist { --cf-listing-container-width: 960px; } }
@media (min-width: 1200px) { body.has-guideslist { --cf-listing-container-width: 1140px; } }
@media (min-width: 1400px) { body.has-guideslist { --cf-listing-container-width: 1320px; } }
.cf-guides-list { margin: 68px 0 67px; padding-right: 14px; }
.cf-guides-list__item { border-bottom: 1px dotted #ddd; padding: 0 0 16px; }
.cf-guides-list__item + .cf-guides-list__item { padding-top: 14px; }
.cf-guides-list__item:last-child { padding-bottom: 0; }
.cf-guides-list h2 {
  color: #27316e;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 30px;
  font-weight: 400;
  line-height: 44px;
  margin: 0 0 4px;
}
.cf-guides-list h2 a { color: inherit; text-decoration: none; }
.cf-guides-list h2 a:hover { color: #5cc7f4; }
.cf-guides-list time { color: #999; display: block; font-size: 14px; font-style: italic; margin-bottom: 15px; }
.cf-guides-list__summary p { color: #111; font-size: 17px; line-height: 1.5; margin: 0 0 22px; }
.cf-guides-list__button {
  background: #27316e;
  border-radius: 3px;
  color: #fff;
  display: inline-block;
  font-size: 16px;
  padding: 11px 15px;
  text-decoration: none;
}
.cf-guides-list__button:hover { background: #5cc7f4; color: #fff; }
.cf-guide-detail { margin: 63px 0 67px; padding-right: 14px; }
.cf-guide-detail h2 { color: #27316e; font: 400 28px/44px 'Source Sans Pro', sans-serif; margin: 0 0 4px; }
.cf-guide-detail__meta { color: #999; font-size: 14px; font-style: italic; margin-bottom: 25px; }
.cf-guide-detail__meta a { color: #5cc7f4; text-decoration: none; }
.cf-guide-detail__body p { color: #111; font-size: 17px; line-height: 1.5; margin: 0 0 20px; }
.cf-guide-detail__body a { color: #5cc7f4; text-decoration: underline; }
body.has-guidedetail .cf-latest-news { margin-bottom: 107px; }
@media (min-width: 768px) {
  .cf-guides-list { position: relative; left: -18px; top: 18px; }
  .cf-guide-detail { position: relative; left: -18px; top: 18px; }
  body.menu-guides-publications .cf-tax-dates-quote,
  body.menu-guide-for-new-businesses .cf-tax-dates-quote,
  body.has-guideslist .cf-tax-dates-quote,
  body.has-guidedetail .cf-tax-dates-quote { margin-left: 8px; margin-top: 52px; position: relative; top: 18px; width: calc(100% + 9px); }
  body.menu-guides-publications .cf-latest-news,
  body.menu-guide-for-new-businesses .cf-latest-news,
  body.has-guideslist .cf-latest-news,
  body.has-guidedetail .cf-latest-news { margin-left: 24px; position: relative; top: 18px; }
}
body.menu-guides-publications .cf-latest-news time,
body.menu-guide-for-new-businesses .cf-latest-news time,
body.has-guideslist .cf-latest-news time,
body.has-guidedetail .cf-latest-news time { font-size: 12px; font-style: italic; }
@media (max-width: 767.98px) {
  body.menu-guides-publications .cf-breadcrumbs,
  body.menu-guide-for-new-businesses .cf-breadcrumbs,
  body.has-guideslist .cf-breadcrumbs,
  body.has-guidedetail .cf-breadcrumbs { padding: 0; }
  .cf-guides-list { margin-top: 35px; padding-right: 0; }
  .cf-guide-detail { margin-top: 35px; padding-right: 0; }
  body.menu-guides-publications .cf-tax-dates-quote,
  body.menu-guide-for-new-businesses .cf-tax-dates-quote,
  body.has-guideslist .cf-tax-dates-quote,
  body.has-guidedetail .cf-tax-dates-quote { margin-top: 0; }
}
.cf-tax-dates-quote { background: #27316e; border-radius: 3px; color: #fff; padding: 20px; }
.cf-tax-dates-quote p { color: #fff; font-size: 18px; margin: 0; }
.cf-tax-dates-quote a { color: #5cc7f4; display: inline-block; font-size: 20px; margin-top: 20px; text-decoration: underline; }
.cf-latest-news { margin: 40px 0 65px; }
.cf-latest-news h2 { color: #27316e; font-family: 'Source Sans Pro', sans-serif; font-size: 28px; font-weight: 600; line-height: 34px; margin: 0 0 15px; }
.cf-latest-news ul { list-style: none; margin: 0; padding: 0; }
.cf-latest-news li { border-bottom: 1px dotted #ddd; padding: 0 0 10px; }
.cf-latest-news li + li { padding-top: 10px; }
.cf-latest-news a { color: #27316e; display: block; font-family: 'Source Sans Pro', sans-serif; font-size: 18px; font-weight: 600; line-height: 22px; text-decoration: underline; }
.cf-latest-news a:hover { color: #5cc7f4; }
.cf-latest-news time { color: #999; display: block; font-size: 14px; line-height: 20px; margin-top: 3px; }
@media (min-width: 768px) {
  body.menu-key-tax-dates .cf-tax-dates-quote { margin-left: 60px; margin-top: 55px; }
  body.menu-key-tax-dates .cf-latest-news { margin-left: 60px; }
}
@media (max-width: 767.98px) {
  body.menu-key-tax-dates .clifford-fry-richtext { margin-top: 35px; }
  .cf-tax-dates-sidebar { margin-bottom: 45px; }
}
@media (max-width: 767.98px) {
  body.menu-faqs .clifford-fry-richtext { margin-top: 35px; }
  body.menu-faqs .cf-contact-request { margin: 15px 0 45px; width: 100%; }
  body.menu-faqs .bf-editor-element--accordion .accordion-button { font-size: 18px !important; line-height: 26px !important; }
}
.cf-services-grid__cards {
  display: grid;
  gap: 38px 45px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.cf-services-grid__card {
  background: #fff;
  box-shadow: 0 5px 16px rgba(39, 49, 110, .18);
  padding: 0 0 23px;
  text-align: center;
}
.cf-services-grid__image { display: block; }
.cf-services-grid__image img { display: block; height: 150px; object-fit: cover; width: 100%; }
.cf-services-grid__card h3 {
  color: var(--cf-navy);
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 30px;
  margin: 20px 0 10px;
  padding: 10px 0 5px;
}
.cf-services-grid__link {
  background: var(--cf-navy);
  color: #fff;
  display: inline-block;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 14px;
  font-weight: 400;
  padding: 10px 30px;
  text-decoration: none;
  border-radius: 5px;
}
.cf-services-grid__link:hover { background: #1d2555; color: #fff; }
@media (max-width: 767.98px) {
  .cf-services-grid__cards { grid-template-columns: 1fr; }
}
@media (min-width: 768px) {
  body:not(.menu-home) .cf-page-hero + .bf-editor-element--richtext {
    margin-left: calc((100% - min(1150px, calc(100vw - 115px))) / 2);
    max-width: none;
    width: min(1150px, calc(100vw - 115px));
  }
}
body:not(.menu-home) .cf-our-people {
  background: url('../../../../../images/cliffj3/our-people.jpg') right top / auto 100% no-repeat var(--cf-pale-blue);
  color: var(--cf-text);
  min-height: 400px;
  padding: 0;
}
body:not(.menu-home) .cf-our-people .container {
  box-sizing: border-box;
  max-width: 1200px;
  min-height: 400px;
  padding: 0 25px;
}
body:not(.menu-home) .cf-our-people__copy { max-width: none; }
body:not(.menu-home) .cf-our-people h2,
body:not(.menu-home) .cf-accreditations h2 {
  background: var(--cf-pale-blue);
  color: var(--cf-navy);
  display: inline-block;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 34px;
  font-weight: 300;
  line-height: 38px;
  margin: 50px 0 20px;
  padding: 0 0 5px;
}
body:not(.menu-home) .cf-our-people p {
  background: var(--cf-pale-blue);
  color: var(--cf-text);
  font-size: 18px;
  font-weight: 300;
  line-height: 27px;
  margin: 0 0 15px;
  width: 50%;
}
body:not(.menu-home) .cf-our-people p strong { font-weight: 400; }
body:not(.menu-home) .cf-our-people .cf-button {
  font-weight: 300;
  margin: 20px 0 75px;
  padding: 20px;
}
body:not(.menu-home) .cf-accreditations { padding: 0 0 45px; text-align: center; }
body:not(.menu-home) .cf-accreditations .container {
  max-width: 1150px;
  padding: 0;
}
body:not(.menu-home) .cf-accreditations h2 { margin-bottom: 20px; }
body:not(.menu-home) .cf-accreditations h2 { background: transparent; }
body:not(.menu-home) .cf-accreditations__logos {
  justify-content: center;
  margin: 0 0 10px 25px;
}
body:not(.menu-home) .cf-accreditations p {
  color: var(--cf-text);
  font-size: 17px;
  line-height: 25.5px;
  margin: 0 auto 15px;
  text-align: center;
}

p.intro, span.intro, strong.intro {
  color: #27316e !important;
  font-size: 28px !important;
  line-height: 34px !important;
  font-weight: 300 !important;
  font-family: Source Sans Pro !important;
  margin: 0 auto !important;
    margin-top: 0px !important;
    margin-bottom: 0px !important;
  margin-bottom: 10px !important;
  margin-top: 20px !important;
}

a{
  text-decoration: none;
}

.row {
  --bs-gutter-x: 0rem !important;
}

.cf-site-footer__bottom {
  padding: 25px 0 10px;
  background: #fff;
}

.navbar {
  --bs-navbar-padding-y: 0 !important;
}


.cf-site-footer__bottom p {
  color: #000 !important;
}

.cf-site-footer__bottom a {
  color: var(--cf-light-blue) !important;
}

@media (max-width: 767.98px) {
  body:not(.menu-home) .cf-breadcrumbs { position: relative; top: auto; }
  body:not(.menu-home) .cf-page-hero { min-height: 220px; }
  body:not(.menu-home) .cf-page-hero h1 { font-size: 38px; line-height: 1.05; }
  body:not(.menu-home) .cf-page-hero h1 { white-space: normal; }
  body:not(.menu-home) .cf-page-hero + .bf-editor-element--richtext { margin-left: 0; margin-top: 35px; width: auto; }
  body:not(.menu-home) .cf-our-people { background-size: cover; }
  body:not(.menu-home) .cf-our-people p { width: 80%; }
}
@media (max-width: 991.98px) {
  .cf-home-panels,.cf-site-footer__columns,.cf-footer-bottom { grid-template-columns: 1fr; }
  .cf-home-why { background-position: right -180px center; min-height: 500px; padding: 45px 30px; }
  .cf-home-why > a { margin-right: 0; padding-left: 20px; }
  .cf-home-why > a img,.cf-home-why__brochure { height: 300px; }
  .cf-home-why h3 { font-size: 44px !important; }
  .cf-home-why ul { max-width: 54%; }
  .cf-home-why li { font-size: 20px !important; line-height: 26px !important; margin: 18px 0; }
  .cf-home-clients__inner { display: block; }
  .cf-home-clients__copy,.cf-home-clients__map { max-width: 100%; width: 100%; }
  .cf-home-questions__inner { background: none; padding-right: 0; }
  .cf-home-content { margin-top: 0; }
  .menu-home .clifford-fry-video-hero,.menu-home .clifford-fry-video-hero__overlay { min-height: 360px; }
  .menu-home .clifford-fry-video-hero__overlay h1 { font-size: 28px; margin-top: 20px; }
  .menu-home .clifford-fry-video-hero__overlay p { font-size: 18px; }
  .cf-home-panel { min-height: 200px; }
}

@media (min-width: 992px) and (max-width: 1399.98px) {
  .cf-home-why { background-position: right -350px center; }
}

@media (max-width: 767.98px) {
  .cf-home-why { background-position: 62% center; min-height: 0; padding: 45px 24px; }
  .cf-home-why > a { display: none; }
  .cf-home-why h3 { font-size: 42px !important; }
  .cf-home-why ul { max-width: none; }
}

/* Match Gantry's header widths and logo/menu rows at the original breakpoints. */
.cf-mobile-contact { display: none; }
.site-header__utility { border-bottom: 0; }
.cf-topbar__content { min-height: 43px; padding-top: 3px; }
.cf-primary-navigation { min-height: 0; }
.cf-primary-navigation > .container { padding: 0 25px; align-items: stretch; }
.cf-site-header .cf-site-logo { height: 114px; padding: 4px 0 0; margin: 0 auto 0 0; }
.cf-site-logo img { width: 360px; max-width: 100%; max-height: none; }
.cf-primary-navigation .mod-menu > li > a { padding: 45px 20px; font-size: 16px; line-height: 24px; white-space: nowrap; }
.cf-primary-navigation .mod-menu > li.current > a,
.cf-primary-navigation .mod-menu > li.active > a { font-weight: 400; }
@media (min-width: 1200px) and (max-width: 1599.98px) {
  .cf-site-header .cf-topbar__content,.cf-primary-navigation > .container { width: 1200px; }
  .cf-primary-navigation > .container { padding: 0; }
  .cf-site-header .cf-site-logo { flex: 0 0 350px; height: 112.5px; padding: 0; }
  .cf-site-logo img { width: 350px; margin-top: 3.4px; }
  .cf-primary-navigation .mod-menu > li > a { padding: 45px 15px; font-size: 15px; line-height: 22.5px; }
}
@media (min-width: 768px) and (max-width: 1199.98px) {
  .cf-site-header .cf-topbar__content,.cf-primary-navigation > .container { width: 960px; }
  .cf-site-header .cf-primary-navigation > .container { flex-wrap: wrap; }
  .cf-site-header .cf-site-logo { flex: 0 0 100%; height: 112px; padding: 6px 0 0; justify-content: center; }
  .cf-site-header .cf-primary-navigation .navbar-collapse { flex: 0 0 100%; justify-content: center; padding: 0; }
  .cf-primary-navigation .mod-menu { flex-wrap: wrap; justify-content: center; height: auto; }
  .cf-primary-navigation .mod-menu > li > a { padding: 20px 18px; }
  .cf-topbar__content,.cf-utility-links { justify-content: center; }
}
@media (min-width: 768px) and (max-width: 959.98px) {
  .cf-site-header .cf-topbar__content,.cf-primary-navigation > .container { width: 768px; }
  .site-header__utility { padding: 10px 0; }
  .cf-site-header .cf-primary-navigation .mod-menu > li { border: 0; }
}
@media (max-width: 767.98px) {
  .cf-topbar__content { display: none; }
  .cf-mobile-contact { display: flex; justify-content: center; align-items: center; gap: 10px; min-height: 45.5px; font-size: 16px; font-weight: 600; }
  .cf-mobile-contact a { text-decoration: none; }
  .cf-mobile-contact a[href^="tel:"] { color: var(--cf-light-blue); }
  .cf-primary-navigation > .container { width: 95%; flex-wrap: wrap; }
  .cf-site-header .cf-site-logo { flex: 0 0 100%; height: auto; padding: 21px 0 15px; justify-content: center; }
  .cf-primary-navigation .navbar-toggler { display: flex; align-items: center; justify-content: center; gap: 5px; margin: 0 -25px 0 auto; padding: 10px 13px; width: 92px; min-height: 54px; border: 0; border-radius: 0; color: var(--cf-navy); font-size: 14px; font-weight: 700; }
  .cf-primary-navigation .navbar-toggler-icon { width: 18px; height: 18px; }
  .cf-primary-navigation .navbar-collapse { flex-basis: 100%; padding: 0 0 15px; }
  .cf-primary-navigation .mod-menu { display: block; height: auto; }
  .cf-site-header .cf-primary-navigation .mod-menu > li { display: block; border: 0; }
  .cf-primary-navigation .mod-menu > li > a { padding: 10px; font-size: 18px; line-height: 27px; white-space: normal; }
  body.menu-home .clifford-fry-video-hero__overlay h1 { font-size: 28px; margin-top: 20px; }
  body.menu-home .clifford-fry-video-hero__overlay p { font-size: 18px; }
}

.cf-home-mobile-services { display: none; }

/* Phone layouts follow the live site's separate mobile presentation. */
@media (max-width: 767.98px) {
  .menu-home .clifford-fry-video-hero {
    background: url('../../../../../images/cliffj3/headers/mobile-bg.jpg') left top / cover;
    min-height: 0;
  }
  .menu-home .clifford-fry-video-hero > video,
  .menu-home .clifford-fry-video-hero__overlay br,
  .menu-home .clifford-fry-video-hero__overlay a[href="#scroll"],
  .menu-home .cf-home-panels { display: none; }
  .menu-home .clifford-fry-video-hero__overlay { background: transparent; min-height: 0; }
  .menu-home .clifford-fry-video-hero__overlay .container { max-width: none; padding: 0; }
  body.menu-home .clifford-fry-video-hero__overlay h1 {
    font-size: 28px; font-weight: 400; line-height: 30px; margin: 10px 0; padding-top: 20px;
  }
  body.menu-home .clifford-fry-video-hero__overlay p {
    font-size: 18px; line-height: 25.5px; margin: 0; padding: 0 0 30px;
  }
  .cf-home-mobile-services { display: block; padding: 15px max(10px, 5.064%); text-align: center; }
  .cf-home-mobile-services > div { display: flow-root; padding: 0; }
  .cf-home-mobile-services h3 {
    color: var(--cf-navy) !important; font: 300 28px/34px 'Source Sans Pro', sans-serif !important;
    margin: 20px 0 10px !important; padding-bottom: 5px;
  }
  .cf-home-mobile-services a {
    background: var(--cf-navy); border-radius: 5px; box-sizing: content-box; color: #fff;
    display: block; font-size: 14px; line-height: 25.5px; margin: 0 auto 15px; padding: 10px;
    text-decoration: none; width: 60%;
  }
  .cf-home-mobile-services a:hover { background: var(--cf-light-blue); }
  .menu-home .cf-home-content { margin-top: 0; }
  .menu-home .cf-home-intro { padding: 127.5px max(25px, 8.91%) 94px; }
  .menu-home .cf-home-intro h3 { padding-bottom: 5px; }
  .menu-home .cf-home-intro p { font-size: 18px; line-height: 25.5px; margin-bottom: 15px; }
  .menu-home .cf-home-intro strong { font-weight: 600; }
  .menu-home .cf-home-why { display: none; }
  .menu-home .cf-button,
  .menu-about-us .cf-button { font-size: 20px; font-weight: 400; line-height: 25.5px; margin-top: 20px; padding: 20px; }
  .menu-home .cf-button::after,
  .menu-about-us .cf-button::after { content: '\f0da'; font-family: 'Font Awesome 6 Free'; font-weight: 900; padding-left: 15px; }
  .menu-home .bf-editor-element--testimonialcarousel { min-height: 0; padding: 20px max(25px, 8.91%) 128px; }
  .menu-home .bf-editor-element--testimonialcarousel .carousel-item { margin-bottom: 0; padding: 15px 0 !important; }
  .menu-home .bf-editor-element--testimonialcarousel .blockquote { font-size: 22px; font-weight: 300; line-height: 28px; margin-bottom: 15px; }
  .menu-home .bf-editor-element--testimonialcarousel .blockquote p { font-size: inherit; line-height: inherit; margin: 0; }
  .menu-home .bf-editor-element--testimonialcarousel .blockquote p:not(.testimonial) { display: none; }
  .menu-home .bf-editor-element--testimonialcarousel .blockquote-footer { font-size: 17px; font-weight: 600; margin: 0; }
  .menu-home .bf-editor-element--testimonialcarousel .blockquote-footer::before { content: none; }
  .menu-home .cf-testimonial-indicators { bottom: 85px; }
  .menu-home .cf-testimonial-indicators [data-bs-target] { height: 18px; width: 18px; }
  .menu-home .cf-home-clients { padding: 30px max(25px, 8.91%) 30px; }
  .menu-home .cf-home-clients__copy { padding: 0; }
  .menu-home .cf-home-clients__copy h3 { font-size: 28px !important; line-height: 44px !important; color: #fff !important; margin: 20px 0 10px !important; }
  .menu-home .cf-home-clients__copy li { font-size: 17px; line-height: 30px; }
  .menu-home .cf-home-clients__map { display: none; }
  .menu-home .cf-home-questions { padding: 50px max(25px, 8.15%) 25px; text-align: center; }
  .menu-home .cf-home-questions h3 { font-size: 36px !important; padding-bottom: 10px; }
  .menu-home .cf-home-questions p { font-size: 24px; font-weight: 300; line-height: 34px; margin-bottom: 15px; }
  .menu-home .cf-home-questions + * { margin-top: 0; }
  .menu-home .cf-home-clients__copy li::before { content: '\f061'; font-family: 'Font Awesome 6 Free'; font-size: 12px; font-weight: 900; }
  .cf-site-footer .cf-site-footer__columns { display: flow-root; padding: 0 5.064%; text-align: center; }
  .cf-site-footer__columns > :first-child { display: none; }
  .cf-site-footer__columns > :nth-child(2) li { display: inline-block; margin-right: 10px; }
  .cf-site-footer__columns > :nth-child(2) { padding-bottom: 15px; }
  .cf-site-footer .cf-site-footer__columns h3 { font-size: 28px !important; line-height: 34px !important; margin: 20px 0 5px !important; padding-bottom: 5px; }
  .cf-site-footer__columns p { margin-bottom: 15px; }
  footer.cf-site-footer { padding-top: 0; }
  .cf-site-footer__bottom { background: #f5f5f5; padding-top: 15px; text-align: center; }
  .cf-footer-bottom { display: block; }
  .cf-footer-bottom p { font-size: 14px; line-height: 23.8px; margin-bottom: 25px; }
  .cf-footer-bottom__social { margin: 0 auto !important; max-width: 230px; text-align: center; }
  .cf-footer-bottom__social > img { display: block; margin: 30px auto 5px; }

  /* Keep the image at its natural height, with copy flowing below it. */
  body.menu-about-us .cf-breadcrumbs { position: absolute; top: 325px; }
  body.menu-about-us .cf-page-hero { min-height: 313px; }
  body.menu-about-us .cf-page-hero + .clifford-fry-richtext { margin-top: 75px; padding-left: 32px; padding-right: 32px; margin-bottom: 65px; }
  body.menu-about-us .clifford-fry-richtext h3 img { display: block; float: none !important; height: auto; margin: 10px 0 !important; width: 100%; }
  body.menu-about-us .cf-our-people {
    background-size: auto 400px; background-position: right top; min-height: 0; padding-top: 328px;
  }
  body.menu-about-us .cf-our-people .container { max-width: none; min-height: 0; padding: 0; }
  body.menu-about-us .cf-our-people h2 { line-height: 38px; margin: 0 0 20px; padding: 10px 10px 10px 20px; }
  body.menu-about-us .cf-our-people p { box-sizing: content-box; padding: 10px 10px 10px 20px; width: 80%; }
  body.menu-about-us .cf-our-people .cf-button { margin: 20px 0 85px 40px; }
  body.menu-about-us .cf-accreditations .container { padding: 0 8.91%; }
  body.menu-about-us .cf-accreditations__logos { gap: 20px; margin-left: 0; }
  body.menu-about-us .cf-accreditations__logos img { max-width: 100%; max-height: 90px; }
}

@media (min-width: 481px) and (max-width: 767.98px) {
  body.menu-home .clifford-fry-video-hero__overlay p { padding-bottom: 50px; }
  .menu-home .cf-home-why { display: block; }
}

/* Shared visual rules: typography, buttons and footer apply throughout the site. */
body.site { --bs-body-font-size: 17px; overflow-x: clip; }
.clifford-fry-richtext img,
.cf-guide-detail__body img,
.cf-guides-list__summary img { max-width: 100%; height: auto; }
.cf-button {
  font-size: 20px; font-weight: 400; line-height: 27px; padding: 20px;
}
.cf-button::after {
  content: '\f0da'; font-family: 'Font Awesome 6 Free'; font-weight: 900; padding-left: 15px;
}
.cf-questions-cta p { font-weight: 300; }
.cf-breadcrumbs a { text-decoration: none; }
body:not(.menu-home) .cf-breadcrumbs > .container,
body:not(.menu-home) .cf-questions-cta .container { max-width: 1150px; }
.cf-site-footer__columns h3 { margin: 20px 0 15px; padding-bottom: 5px; font-size: 28px; line-height: 34px; font-weight: 300; }
.cf-site-footer__columns p { margin-bottom: 15px; }
.cf-site-footer__bottom { background: #f5f5f5; padding: 15px 0 10px; }
.cf-footer-bottom { align-items: start; }
.cf-footer-bottom p { line-height: 21px; margin-bottom: 15px; }
.cf-footer-bottom__social { white-space: nowrap; }
.cf-footer-bottom__social img { margin: 5px 3px; }
.cf-services-grid__card h3 { font-size: 24px; line-height: 30px; font-weight: 600; }
.cf-services-grid__cards { gap: 56px 65px; }
.cf-services-grid__image img { height: auto; aspect-ratio: 467 / 200; }
body:not(.menu-home) .cf-services-grid { margin-top: 30px; margin-bottom: 90px; }
.cf-services-grid__link { min-width: 220px; max-width: 100%; padding: 10px 20px; }
.cf-utility-links ul { gap: 30px; }
.cf-topbar__content { padding-right: 25px; }

/* Homepage modules retain their distinct presentation, using the shared fonts. */
.menu-home .cf-home-intro h3 { font-size: 28px; line-height: 34px; margin: 20px 0 10px; }
.menu-home .cf-home-intro p { font-size: 18px; line-height: 27px; margin-bottom: 15px; }
.menu-home .cf-home-intro strong { font-weight: 600; }
.menu-home .cf-home-intro { padding-bottom: 44px; }
.menu-home .cf-home-intro .cf-button { margin-top: 20px; }
.menu-home .bf-editor-element--testimonialcarousel .blockquote p:not(.testimonial) { display: none; }
.menu-home .bf-editor-element--testimonialcarousel .blockquote-footer { font-size: 17px; font-weight: 600; margin: 0; }
.menu-home .bf-editor-element--testimonialcarousel .blockquote-footer::before { content: none; }
.menu-home .cf-home-clients__copy h3 { color: #fff; font-size: 42px; line-height: 44px; margin: 20px 0 30px; }
.menu-home .cf-home-clients__copy li { font-size: 17px; }
.cf-home-clients__copy li::before { content: '\f061'; font-family: 'Font Awesome 6 Free'; font-size: 12px; font-weight: 900; }
.menu-home .cf-home-questions h3 { font-size: 46px; line-height: 1.1; margin: 20px 0 10px; padding-bottom: 10px; }
.menu-home .cf-home-questions p { font-size: 24px; font-weight: 300; line-height: 36px; margin-bottom: 15px; }
.cf-home-why li::before { content: '\f00c'; font-family: 'Font Awesome 6 Free'; font-weight: 900; }
@media (min-width: 768px) {
  .cf-site-footer__columns,.cf-footer-bottom { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .cf-footer-bottom__social { white-space: normal; }
  .cf-footer-bottom__social > img { margin-right: 15px; }
  .cf-home-intro { max-width: 1200px; padding: 123px 25px 35px; }
  .menu-home .clifford-fry-video-hero,.menu-home .clifford-fry-video-hero__overlay { min-height: 620px; }
  body.menu-home .clifford-fry-video-hero__overlay h1 { font-size: 55px; font-weight: 400; line-height: 40px; margin: 140px 0 10px; }
  body.menu-home .clifford-fry-video-hero__overlay p { font-size: 26px; line-height: 39px; margin: 0 0 20px; }
  .cf-home-content { margin-top: -302px; }
  .cf-home-panels { grid-template-columns: repeat(3,minmax(0,1fr)); max-width: 1600px; margin: auto; }
  .cf-home-panel { min-height: 302px; padding: 55px 25px 30px; }
  .cf-home-panel h3 { font-size: 40px; line-height: 48px; margin: 0 0 10px; padding-bottom: 5px; white-space: nowrap; }
  .cf-home-panel a { margin: 0 5.5%; padding: 60px 20px; }
  .menu-home .cf-home-why { min-height: 617px; padding: 93px max(25px,calc((100% - 1150px)/2)) 50px; background-position: center; }
  .menu-home .cf-home-why > a { margin-right: 45px; }
  .menu-home .cf-home-why > a img { height: 400px; }
  .menu-home .cf-home-why h3 { font-size: 49px !important; line-height: 34px !important; margin: 0 0 20px !important; }
  .menu-home .cf-home-why ul { max-width: 50%; padding-left: 10px; }
  .menu-home .cf-home-why li { font-size: 25px !important; line-height: 30px !important; margin: 0 0 40px; }
  .menu-home .bf-editor-element--testimonialcarousel { padding: 70px max(60px,calc((100% - 1050px)/2)) 100px; text-align: left; }
  .menu-home .bf-editor-element--testimonialcarousel .carousel-item { padding: 0 !important; margin-bottom: 0; }
  .menu-home .bf-editor-element--testimonialcarousel .blockquote p { margin: 0; }
  .menu-home .bf-editor-element--testimonialcarousel .blockquote,
  .menu-home .bf-editor-element--testimonialcarousel .blockquote p,
  .menu-home .bf-editor-element--testimonialcarousel .blockquote-footer { text-align: left; }
  .menu-home .cf-testimonial-indicators { bottom: 105px; }
  .menu-home .cf-testimonial-indicators [data-bs-target] { width: 20px; height: 20px; }
  .menu-home .cf-testimonial-indicators .active { width: 26px; height: 26px; }
  .cf-home-clients__inner { display: flex; max-width: 1150px; min-height: 359px; }
  .cf-home-clients__copy { width: 50%; padding-left: 120px; }
  .cf-home-clients__map { width: 40%; max-width: 460px; margin-left: auto; }
  .menu-home .cf-home-questions { padding: 50px 0 25px; }
  .menu-home .cf-home-questions h3 { line-height: 34px; }
  .menu-home .cf-home-questions p:first-of-type { max-width: 680px; }
  .cf-home-questions__inner { min-height: 0; max-width: 1150px; width: 100%; margin: auto; padding: 0 15px; }
}
@media (min-width: 960px) and (max-width: 1599.98px) {
  .cf-home-panels { max-width: 1200px; }
  .cf-home-panel { padding-left: 0; padding-right: 0; }
  .cf-home-panel h3 { font-size: 34px; line-height: 40.8px; }
  .cf-home-panel a { font-size: 24px; margin: 0 10%; }
}
@media (min-width: 960px) and (max-width: 1199.98px) {
  .cf-home-panels { max-width: 960px; }
  .cf-home-panel h3 { font-size: 28px; line-height: 33.6px; }
  .cf-home-panel a { font-size: 20px; margin: 0 11px; }
  .cf-home-intro { max-width: 960px; }
  .cf-utility-links { transform: translateX(80px); }
}
@media (min-width: 768px) and (max-width: 959.98px) {
  .cf-home-panels { display: none; }
  .cf-home-mobile-services { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: auto; max-width: 768px; padding: 0 25px 110px; text-align: center; }
  .cf-home-mobile-services > div { padding: 20px 15px; }
  .cf-home-mobile-services h3 { color: #fff; font: 300 28px/34px 'Source Sans Pro',sans-serif; margin: 20px 0 15px; }
  .cf-home-mobile-services a { display: block; background: var(--cf-navy); color: #fff; border-radius: 5px; font-size: 14px; font-weight: 400; line-height: 25.5px; padding: 10px; margin: 0 15px; text-decoration: none; }
  body.menu-home .clifford-fry-video-hero__overlay h1 { font-size: 32px; }
  .cf-home-intro { max-width: 768px; padding-top: 123px; }
  .menu-home .cf-home-why { min-height: 700px; }
  .menu-home .cf-home-why h3 { font-size: 34px !important; }
  .menu-home .cf-home-why ul { max-width: 42%; }
  .menu-home .cf-home-why li { font-size: 18px !important; }
  .menu-home .cf-home-why > a { margin-right: 45px; }
  .cf-home-clients__copy { padding-left: 20px; }
  .menu-home .cf-home-clients__copy h3 { font-size: 36px; white-space: nowrap; }
  .menu-home .cf-home-questions h3 { font-size: 36px; }
}
@media (min-width: 768px) and (max-width: 1199.98px) {
  .menu-home .cf-home-questions { text-align: center; }
  .cf-home-questions__inner { max-width: 960px; }
  .menu-home .cf-home-questions p:first-of-type { max-width: none; }
}

/* Keep the brochure in the clear space beside the child, whose background
   remains anchored to the right edge as the viewport changes. */
@media (min-width: 768px) {
  .menu-home .cf-home-why {
    position: relative;
    background-size: max(150vw,2364px) auto;
    background-position: right calc(200px - max(49.5vw,780px)) top;
  }
  .menu-home .cf-home-why > a { position: absolute; float: none; top: 93px; right: max(300px,calc((100% - 1150px)/2 + 175px)); margin: 0; padding: 0; }
  .menu-home .cf-home-why ul { max-width: calc(100% - 620px); }
}
@media (min-width: 960px) and (max-width: 1199.98px) {
  .menu-home .cf-home-why { min-height: 700px; background-size: max(150vw,2682px) auto; background-position: right calc(140px - max(49.5vw,885px)) top; }
  .menu-home .cf-home-why > a { right: 250px; }
  .menu-home .cf-home-why > a img { height: 330px; }
  .menu-home .cf-home-why ul { max-width: calc(100% - 570px); }
}
@media (min-width: 768px) and (max-width: 959.98px) {
  .cf-home-questions__inner { max-width: 720px; }
  .menu-home .cf-home-why { background-size: max(150vw,2682px) auto; background-position: right calc(140px - max(49.5vw,885px)) top; }
  .menu-home .cf-home-why > a { right: 250px; }
  .menu-home .cf-home-why > a img { height: 260px; }
  .menu-home .cf-home-why ul { max-width: calc(100% - 490px); }
  .menu-home .cf-home-why li { line-height: 26px !important; margin-bottom: 25px; }
}
@media (max-width: 767.98px) {
  .cf-mobile-contact a { color: var(--cf-navy); }
  .cf-primary-navigation .navbar-toggler { min-height: 64px; }
  .menu-home .cf-home-intro p { line-height: 27px; }
  .menu-home .cf-home-intro { padding-bottom: 94px; }
  .menu-home .cf-home-questions h3 { font-size: 36px; }
  .menu-home .cf-home-questions p { line-height: 34px; }
  .menu-home .bf-editor-element--testimonialcarousel { padding-bottom: 128px; }
  .menu-home .cf-testimonial-indicators { bottom: 85px; }
  .menu-home .cf-testimonial-indicators [data-bs-target] { width: 20px; height: 20px; }
  .menu-home .cf-testimonial-indicators .active { width: 26px; height: 26px; }
  .cf-footer-bottom__social { white-space: normal; }
  body:not(.menu-home):not(.menu-privacy-policy) .cf-breadcrumbs { position: absolute; top: 325px; }
  body:not(.menu-home) .cf-page-hero { min-height: 313px; }
  body:not(.menu-home) .cf-page-hero .container { padding-left: 0; padding-right: 0; }
  body:not(.menu-home) .cf-page-hero h1 { font-size: 40px; line-height: 40px; }
  body:not(.menu-home) .cf-page-hero + .bf-editor-element--richtext { margin-top: 75px; }
  body:not(.menu-home) .cf-questions-cta { text-align: center; padding: 50px 20px 25px; }
  body:not(.menu-home) .cf-questions-cta h2 { font-size: 36px; }
  body:not(.menu-home) .cf-breadcrumbs .breadcrumb { display: block; line-height: 24px; }
  body:not(.menu-home) .cf-breadcrumbs .breadcrumb-item { display: inline; }
  body:not(.menu-home) .cf-breadcrumbs .mod-breadcrumbs__divider { display: inline-block; }
  body:has(.cf-office-box) .clifford-fry-richtext:not(:has(.cf-office-box)),
  body.cf-industry-detail .clifford-fry-richtext { margin-top: 75px; }
  .cf-guide-detail,.cf-guides-list { margin-top: 110px; }
}

/* Nine-page visual alignment: keep full-width sections flush with the usable viewport. */
body:not(.menu-home) .cf-page-hero,
body:not(.menu-home) .cf-our-people,
body:not(.menu-home) .cf-accreditations {
  margin-left: calc(50% - 50vw);
  width: 100%;
}
body.menu-key-tax-dates .cf-page-hero,
body.menu-faqs .cf-page-hero { width: 100%; }
body:not(.menu-home) .cf-questions-cta {
  margin-left: calc(50% - 50vw);
  width: 100%;
}

/* Keep the converted article grids on the same 1,150px content measure as the live site. */
@media (min-width: 1200px) {
  body.has-guideslist .com-content-article__body > section:nth-of-type(2) > .container,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) > .container,
  body.menu-faqs .com-content-article__body > section:nth-of-type(2) > .container {
    max-width: 1150px;
    padding-left: 0;
    padding-right: 0;
  }
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-md-8,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-lg-8,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-xl-8,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-xxl-8 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-md-4,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-lg-4,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-xl-4,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-xxl-4 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  body.menu-setting-up-a-new-business .com-content-article__body > section:nth-of-type(2) > .container {
    max-width: 1150px;
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 767.98px) {
  body:not(.menu-home) .cf-questions-cta { margin-left: 0; width: 100%; }
}
/* These service-detail pages use a plain questions band without the generic stairs photo. */
body.cf-industry-detail .cf-questions-cta,
body:is(
  .menu-accountancy-support-for-company-secretary,
  .menu-payroll-and-paye-management,
  .menu-specialist-tax-support-and-accounting,
  .menu-specialist-vat-planning-and-returns
) .cf-questions-cta {
  background-image: none;
}
body.cf-industry-detail .cf-accreditations p {
  box-sizing: border-box;
  max-width: 480px;
  padding: 0 15px;
}
/* Restore true viewport-width backgrounds while accounting for the nested editor columns. */
body:not(.menu-home) .cf-page-hero,
body:not(.menu-home) .cf-our-people,
body:not(.menu-home) .cf-accreditations,
body:not(.menu-home) .cf-questions-cta {
  margin-left: calc(50% - 50vw);
  width: 100vw;
}
body.menu-key-tax-dates .cf-page-hero,
body.menu-faqs .cf-page-hero { width: 100vw; }
@media (min-width: 768px) {
  body.has-guideslist .cf-guides-list { left: 0; }
}
@media (max-width: 767.98px) {
  .cf-site-header .cf-site-logo img {
    width: min(330px, calc(100vw - 50px));
    max-width: 100%;
  }
}
@media (max-width: 767.98px) {
  .cf-site-header .cf-site-logo {
    justify-content: center;
    margin: 0 auto !important;
    width: 100%;
  }
}
@media (min-width: 1200px) {
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-md-8,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-lg-8,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-xl-8,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-xxl-8 {
    flex-basis: 55.5%;
    max-width: 55.5%;
  }
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-md-4,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-lg-4,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-xl-4,
  body.menu-key-tax-dates .com-content-article__body > section:nth-of-type(2) .col-xxl-4 {
    flex-basis: 44.5%;
    max-width: 44.5%;
  }
}

/* Final header override follows the legacy responsive rules above. */
.cf-site-header { background: var(--cf-navy); color: #fff; }
.cf-header-brand { align-items: center; display: flex; justify-content: center; min-height: 92px; padding: 8px 20px 2px; }
.cf-site-header .cf-site-logo { height: auto; justify-content: center; margin: 0; padding: 0; }
.cf-site-header .cf-site-logo img { display: block; height: auto; max-height: 82px; max-width: min(350px,calc(100vw - 40px)); width: 350px; }
.cf-primary-navigation { background: var(--cf-navy); min-height: 0; padding: 0 0 12px; }
.cf-primary-navigation > .container { align-items: center; max-width: 1600px; width: 100%; }
.cf-primary-navigation .navbar-collapse { align-items: center; flex: 1 1 auto; justify-content: center; }
.cf-header-menu { align-items: center; display: flex; flex: 1 1 50%; gap: 0; list-style: none; margin: 0; padding: 0; }
.cf-header-menu--left { justify-content: space-evenly; padding-right: 0; }
.cf-header-menu--right { justify-content: space-evenly; padding-left: 0; }
.cf-header-menu a { color: #fff; display: block; font-size: clamp(.78rem,1.05vw,.95rem); font-weight: 600; letter-spacing: .045em; line-height: 1.3; padding: 8px 4px; text-align: center; text-decoration: none; text-transform: uppercase; white-space: nowrap; }
.cf-header-menu a:hover, .cf-header-menu a:focus-visible { color: var(--cf-light-blue); }
.cf-primary-navigation .navbar-toggler { display: none; }
@media (max-width: 991.98px) and (min-width: 768px) {
  .cf-header-menu a { font-size: .72rem; white-space: normal; }
}
@media (max-width: 767.98px) {
  .cf-header-brand { min-height: 78px; padding: 10px 20px; }
  .cf-site-header .cf-site-logo img { width: 220px; max-height: none; }
  .cf-primary-navigation { padding: 0; }
  .cf-primary-navigation > .container { justify-content: center; padding: 0 15px; position: relative; }
  .cf-primary-navigation .navbar-toggler { align-items: center; background: transparent; border: 0; border-radius: 0; color: #fff; display: flex; gap: 7px; justify-content: center; margin: 0; min-height: 48px; padding: 8px 10px; position: absolute; right: 15px; top: -63px; }
  .cf-primary-navigation .navbar-toggler:focus { box-shadow: none; }
  .cf-primary-navigation .navbar-toggler-icon { filter: invert(1); height: 18px; width: 18px; }
  .cf-primary-navigation .navbar-collapse { flex-basis: 100%; padding: 0 0 12px; }
  .cf-header-menu, .cf-header-menu--left, .cf-header-menu--right { align-items: stretch; display: flex; flex: 0 0 100%; flex-direction: column; gap: 0; justify-content: center; padding: 0; }
  .cf-header-menu li { border-top: 1px solid rgba(255,255,255,.16); }
  .cf-header-menu a { font-size: .95rem; padding: 10px 12px; white-space: normal; }
}

/* Homepage hero follows the new mockup: photo, centered message, and link strip. */
body.menu-home .clifford-fry-video-hero {
  background-color: #0b1833;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 620px;
}
body.menu-home .clifford-fry-video-hero > video { display: none; }
body.menu-home .clifford-fry-video-hero__overlay {
  align-items: flex-start;
  background: linear-gradient(rgba(7, 22, 38, .20), rgba(7, 22, 38, .24));
  min-height: 900px;
  text-align: center;
}
body.menu-home .clifford-fry-video-hero__overlay .container { max-width: 1000px; padding: 0 24px; }
body.menu-home .clifford-fry-video-hero__overlay h1 {
  color: #fff;
  font-size: clamp(2.25rem, 4.6vw, 4.1rem);
  font-weight: 400;
  line-height: 1.12;
  margin: 85px auto 0;
  max-width: 820px;
  text-shadow: 0 3px 9px rgba(0, 0, 0, .9);
}
body.menu-home .cf-home-hero__accent { color: #80dff2; }
body.menu-home .clifford-fry-video-hero__overlay p,
body.menu-home .clifford-fry-video-hero__overlay a[href="#scroll"],
body.menu-home .clifford-fry-video-hero__overlay br { display: none; }
.menu-home .cf-home-content { margin-top: 0; }
.menu-home .cf-home-panels {
  background: #c5eff9;
  border-radius: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0 auto;
  max-width: none;
  min-height: 104px;
  padding: 0;
  width: 100%;
}
.menu-home .cf-home-panel {
  align-items: stretch;
  border-right: 1px solid rgba(39, 49, 110, .12);
  display: flex;
  margin: 0;
  min-height: 104px;
  padding: 0;
}
.menu-home .cf-home-panel:last-child { border-right: 0; }
.menu-home .cf-home-panel__link {
  align-items: center;
  color: #111;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: clamp(1rem, 1.2vw, 1.15rem);
  font-weight: 600;
  justify-content: center;
  line-height: 1.3;
  margin: 0;
  min-height: 104px;
  padding: 12px 16px;
  background: transparent;
  text-decoration: none;
  text-transform: uppercase;
  width: 100%;
}
.menu-home .cf-home-panel__link:hover,
.menu-home .cf-home-panel__link:focus-visible { background: rgba(255,255,255,.28); color: var(--cf-navy); }
.menu-home .cf-home-panel__chevron {
  border-bottom: 1.5px solid currentColor;
  border-right: 1.5px solid currentColor;
  display: block;
  height: 7px;
  margin-top: 7px;
  transform: rotate(45deg);
  width: 7px;
}

.cf-home-intro p  {
  text-align: justify 
}

.menu-home .cf-home-mobile-services { display: none !important; }
@media (min-width: 768px) {
  .menu-home .cf-home-intro { padding-top: 48px; }
}
@media (max-width: 767.98px) {
  body.menu-home .clifford-fry-video-hero,
  body.menu-home .clifford-fry-video-hero__overlay { min-height: 455px; }
  body.menu-home .clifford-fry-video-hero__overlay .container { padding: 0 22px; }
  body.menu-home .clifford-fry-video-hero__overlay h1 {
    font-size: clamp(2rem, 8vw, 2.6rem);
    line-height: 1.12;
    margin-top: 70px;
    max-width: 460px;
  }
  body.menu-home .cf-home-hero__break { display: none; }
  .menu-home .cf-home-content { margin-top: 0; }
  .menu-home .cf-home-panels { min-height: 88px; }
  .menu-home .cf-home-panel { min-height: 88px; }
  .menu-home .cf-home-panel__link {
    font-size: clamp(.72rem, 3vw, .9rem);
    min-height: 88px;
    padding: 9px 5px;
  }
  .menu-home .cf-home-panel__chevron { height: 6px; margin-top: 6px; width: 6px; }
  .menu-home .cf-home-intro { padding-top: 34px !important; }
}

/* Homepage services panel replaces the legacy "Why Choose Us?" feature. */
.menu-home .cf-home-services {
  background: #2b417d;
  border-radius: 0;
  color: #fff;
  margin: 0 0 0;
  max-width: none;
  padding: 88px max(30px, calc((100% - 1150px) / 2)) 84px;
  text-align: left;
  width: 100%;
}
.menu-home .cf-home-services h2 {
  color: #fff;
  font-family: 'Old Standard TT', Georgia, serif;
  font-size: clamp(1.85rem, 2.5vw, 2.45rem);
  font-weight: 400;
  line-height: 1.15;
  margin: 0 auto 27px;
  padding-bottom: 5px;
  position: relative;
  text-align: center;
}
.menu-home .cf-home-services h2::after {
  background: rgba(255,255,255,.8);
  bottom: 0;
  content: '';
  height: 1px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 180px;
}
.menu-home .cf-home-services__links {
  color: #fff;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: clamp(.82rem, 1vw, .95rem);
  font-weight: 400;
  line-height: 1.8;
  margin: 0 0 35px;
  margin-top: 45px;
  text-align: justify;
  text-transform: uppercase;
}
.cf-home-services__quotes {
  margin-bottom:35px;
}
.menu-home .cf-home-services__links a { color: inherit; text-decoration: none; }
.menu-home .cf-home-services__links a:hover,
.menu-home .cf-home-services__links a:focus-visible { color: #80dff2; text-decoration: underline; }
.menu-home .cf-home-services__item { display: inline-block; margin-right: .35em; white-space: nowrap; }
.menu-home .cf-home-services__separator { color: rgba(255,255,255,.9); padding-left: .45em; }
.menu-home .cf-home-services__quote {
  color: #80dff2;
  font-family: 'Old Standard TT', Georgia, serif;
  font-size: clamp(1rem, 1.35vw, 1.3rem);
  font-style: italic;
  font-weight: 400;
  line-height: 1.35;
  margin: 0 0 18px;
  text-align: justify;
}
.menu-home .cf-home-services__quote cite {
  color: #80dff2;
  display: inline;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: .58em;
  font-style: normal;
  margin-left: .8em;
  white-space: nowrap;
}
.menu-home .cf-home-services__quote-button {
  align-items: center;
  background: #c5eff9;
  color: #172746;
  display: flex;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: .95rem;
  justify-content: center;
  margin: 0 auto;
  min-height: 54px;
  text-decoration: none;
  text-transform: uppercase;
  width: min(280px, 100%);
}
.menu-home .cf-home-services__quote-button:hover,
.menu-home .cf-home-services__quote-button:focus-visible { background: #fff; color: #172746; }
@media (max-width: 767.98px) {
  .menu-home .cf-home-services { border-radius: 0; margin: 0 0 12px; padding: 20px 18px 18px; width: 100%; }
  .menu-home .cf-home-services h2 { font-size: 1.85rem; margin-bottom: 20px; }
  .menu-home .cf-home-services__links { font-size: .82rem; line-height: 1.75; margin-bottom: 18px; }
  .menu-home .cf-home-services__links,
  .menu-home .cf-home-services__quote { max-width: none; }
  .menu-home .cf-home-services__separator { padding-left: .25em; }
  .menu-home .cf-home-services__quote { font-size: 1.08rem; line-height: 1.4; margin-bottom: 18px; }
  .menu-home .cf-home-services__quote cite { display: block; margin: 7px 0 0; }
  .menu-home .cf-home-services__quote-button { min-height: 48px; width: min(230px, 100%); }
}

/* Full-bleed UK map feature replaces the legacy homepage client list. */
.menu-home .cf-home-map {
  background-color: #061a35;
  background-image: linear-gradient(90deg, rgba(3, 15, 34, .05) 45%, rgba(3, 15, 34, .28)), url('../../../../../images/cliffj3/homepage-map-background.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-bottom: 20px solid #c5eff9;
  border-top: 20px solid #c5eff9;
  box-sizing: border-box;
  min-height: 500px;
  width: 100%;
}
.menu-home .cf-home-map__inner {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  margin: 0 auto;
  max-width: 1600px;
  min-height: 470px;
  padding: 26px 1.25% 26px max(30px, 8.9%);
  width: 100%;
}
.menu-home .cf-home-map__copy {
  background: rgba(39, 49, 110, .78);
  color: #fff;
  max-width: 470px;
  padding: 28px 34px;
  text-align: center;
  width: 42%;
}
.menu-home .cf-home-map__copy h2 {
  color: #fff;
  font-family: 'Old Standard TT', Georgia, serif;
  font-size: clamp(2rem, 2.65vw, 2.65rem);
  font-weight: 400;
  line-height: 1.16;
  margin: 0 0 16px;
}
.menu-home .cf-home-map__copy p {
  color: #fff;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: clamp(1rem, 1.12vw, 1.12rem);
  line-height: 1.4;
  margin: 0;
}

.cf-home-map__copy * {
  text-align: right 
}

@media (max-width: 767.98px) {
  .menu-home .cf-home-map,
  .menu-home .cf-home-map__inner { min-height: 500px; }
  .menu-home .cf-home-map { min-height: 514px; }
  .menu-home .cf-home-map { background-position: center; }
  .menu-home .cf-home-map__inner { justify-content: center; padding: 24px 18px; }
  .menu-home .cf-home-map__copy { max-width: 430px; padding: 26px 22px; width: 100%; }
  .menu-home .cf-home-map__copy h2 { font-size: 2.1rem; }
  .menu-home .cf-home-map__copy p { font-size: 1rem; }
}


/* Homepage intro copy follows the supplied live-site reference. */
body.menu-home .cf-home-content .cf-home-intro {
  max-width: none;
  padding: 72px 24px 78px;
  padding: 88px max(30px, calc((100% - 1150px) / 2)) 84px;
  text-align: left;
}
body.menu-home .cf-home-content .cf-home-intro h3,
body.menu-home .cf-home-content .cf-home-intro p {
  color: #111;
  font-family: 'Source Sans Pro', sans-serif;
  line-height: 1.45;
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
}
body.menu-home .cf-home-content .cf-home-intro h3 {
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 32px;
  text-align: center;
  font-size: 18px;
}
body.menu-home .cf-home-content .cf-home-intro p {
  font-weight: 400;
  margin-bottom: 28px;
  text-align: left;
}
body.menu-home .cf-home-content .cf-home-intro .cf-home-intro__closing {
  font-weight: 700;
  margin-bottom: 0;
  margin-top: 30px;
  text-align: center;
}
@media (max-width: 767.98px) {
  body.menu-home .cf-home-content .cf-home-intro { padding: 34px 22px 40px; }
  body.menu-home .cf-home-content .cf-home-intro h3 { margin-bottom: 24px; }
  body.menu-home .cf-home-content .cf-home-intro p { margin-bottom: 22px; }
  body.menu-home .cf-home-content .cf-home-intro .cf-home-intro__closing { margin-top: 24px; }
}
