/* Reference composition, with the original navy/mist identity and original assets. */
:root{--od-max:1280px;--od-space:clamp(60px,7.5vw,108px);--od-line:#163a5f20}
body{background:#fff;color:var(--od-ink)}
h1,h2,h3{color:var(--od-navy)}
.od-container,.od-section-inner{max-width:1280px}
.od-container{padding-inline:32px}
.od-section{padding-inline:32px}
.od-section h2{font-size:clamp(30px,3.2vw,44px);line-height:1.25;letter-spacing:-.8px}
.od-section h3{font-size:25px;line-height:1.35}
.od-eyebrow{font:600 11px/1.8 var(--od-body);letter-spacing:.18em;text-transform:uppercase;color:var(--od-accent)}
.od-header,.home .od-header{position:sticky;inset:0 0 auto;background:#fff;box-shadow:0 1px 0 var(--od-line)}
.od-header-inner,.home .od-header-inner{max-width:1440px;min-height:90px;padding:10px 32px;gap:24px;flex-wrap:nowrap}
.od-logo,.home .od-logo{flex:0 0 220px}
.od-logo img,.home .od-logo img{width:220px;height:66px;max-height:66px;object-fit:contain}
.od-header-cta,.home .od-header-cta{display:inline-flex;font-size:12px;min-height:46px;padding:12px 20px;white-space:nowrap;box-shadow:0 6px 20px #163a5f17}
.admin-bar .od-header,.home.admin-bar .od-header{top:32px}
.od-header .od-navigation{flex:1;background:transparent;padding:0;border-radius:0}
.od-header .od-navigation a{font-family:var(--od-body);font-size:12px;font-weight:500;color:var(--od-navy);border:0;border-radius:0;padding:12px 8px;min-height:44px}
.od-header .od-navigation a:hover{background:var(--od-mist);text-decoration:none}
.od-header .od-navigation>.od-menu{gap:3px;justify-content:flex-end}
.od-header .od-navigation .menu-item-has-children>a{padding-right:30px}
.od-header .od-submenu-toggle{color:var(--od-navy);min-width:28px;min-height:44px}
.od-header .od-navigation .sub-menu{padding:12px;border:1px solid var(--od-line);border-radius:4px 4px 16px 16px;min-width:290px;box-shadow:0 15px 35px #163a5f12}
.od-header .od-navigation .sub-menu a{font-size:13px;white-space:normal;padding:10px 12px;border-radius:6px}
.od-header .od-navigation .current-menu-item>a{color:var(--od-accent)}
.od-hero-editorial{min-height:650px}
.od-hero-editorial .od-hero-inner{width:calc(100% - 64px);max-width:1216px;min-height:650px;padding-block:88px 80px}
.od-hero-editorial .od-hero-copy{width:52%;max-width:620px}
.od-hero-editorial .od-hero-copy h1{font-size:clamp(35px,3.35vw,48px);letter-spacing:-1.4px}
.od-hero-editorial .od-hero-copy h1 em{font-size:clamp(75px,6.8vw,100px)}
.od-hero-editorial .od-hero-copy .od-hero-lead{max-width:500px}
.od-hero-editorial .od-hero-visual{left:47%}
.od-trust-strip{padding-block:0;background:#fff;border-bottom:1px solid var(--od-line)}
.od-quick-links{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0}
.od-quick-links li{margin:0;padding:24px 20px}
.od-quick-links li+li{border-left:1px solid var(--od-line)}
.od-quick-links a{display:flex;align-items:center;gap:18px;font-size:14px;min-height:54px}
.od-quick-icon{display:grid;place-items:center;flex-shrink:0;width:52px;height:52px;border-radius:50%;background:var(--od-mist);font-size:27px;font-weight:400;color:var(--od-accent)}
.od-reference-about{background:#fff}
.od-reference-about-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(40px,7vw,100px);align-items:center}
.od-reference-photo figure{margin:0}
.od-reference-photo img{width:100%;max-height:590px;object-fit:cover;object-position:center 30%;border-radius:180px 180px 12px 12px}
.od-reference-about-copy>p:first-child{font-size:11px;letter-spacing:.2em;color:var(--od-accent);font-weight:600}
.od-reference-about-copy>p{font-size:16px;line-height:1.9;color:#4f6370}
.od-reference-services{background:var(--od-mist)}
.od-reference-services>.od-section-inner>h2,.od-reference-areas>.od-section-inner>h2{margin-bottom:42px}
.od-discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-block:32px}
.od-discovery-card{display:flex;flex-direction:column;min-width:0;padding:38px 30px;background:#fff;border:1px solid var(--od-line);border-radius:12px;transition:border-color .2s,transform .2s}
.od-discovery-card:hover{border-color:#3a6f8580;transform:translateY(-3px)}
.od-discovery-card h3{font-size:24px;line-height:1.35;margin:0 0 20px}
.od-discovery-card>p{font-size:15px;line-height:1.8;color:#4f6370}
.od-discovery-card>p:last-child{margin-top:auto;padding-top:20px;margin-bottom:0}
.od-discovery-card>p:last-child a{display:flex;justify-content:space-between;gap:12px;font-size:13px;font-weight:600}
.od-reference-services>.od-section-inner>p:last-child,.od-reference-areas>.od-section-inner>p:last-child{text-align:center;margin-top:35px;font-size:14px}
.od-work-links{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px}
.od-work-links li{margin:0;border-bottom:1px solid var(--od-line)}
.od-work-links a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:84px;padding-block:20px;font-size:16px}
.od-work-links span{font-size:21px;color:var(--od-accent)}
.od-service-intro{background:var(--od-mist);color:var(--od-ink);padding-block:70px}
.od-service-intro h2{color:var(--od-navy)}
.od-service-intro p{font-size:16px;line-height:1.9}
.od-service-cards{padding-block:12px 24px}
.od-service-cards .od-feature-card{padding:36px;border:1px solid var(--od-line);border-radius:12px;background:#fff!important}
.od-service-cards .od-feature-card p{font-size:15px;line-height:1.85;color:#4f6370}
.od-service-cards .od-feature-card h3{font-size:25px}
.od-services-heading{padding-top:80px}
.od-process{margin-top:60px;background:var(--od-navy);padding-block:90px}
.od-process-grid{gap:72px}
.od-process-cards{counter-reset:approach;gap:0}
.od-process-card{position:relative;counter-increment:approach;padding:28px 0 28px 58px;border-color:#ffffff35}
.od-process-card::before{content:counter(approach,decimal-leading-zero);position:absolute;left:0;top:30px;color:#bbd4eb;font-size:14px}
.od-process-card h3{font-size:27px}
.od-process-card p{font-size:15px;line-height:1.8;color:#dbe7ee}
.od-comparison{background:var(--od-mist)}
.od-comparison .wp-block-table{background:#fff;border-radius:12px}
.od-home-posts .od-post-card{border-radius:12px}
.od-reference-tests{background:var(--od-mist)}
.od-reference-tests p{max-width:780px;color:#4f6370}
.od-reference-faq>.od-section-inner{max-width:960px}
.wp-block-details{border-color:var(--od-line);padding-block:24px}
.wp-block-details summary{font-size:21px}
.wp-block-details p{font-size:16px;line-height:1.85}
.od-reference-location{background:var(--od-mist)}
.od-office-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;margin-block:32px 56px}
.od-office-grid h3{font-size:30px}
address{font-style:normal;line-height:1.8}
.od-office-grid address{max-width:500px;margin-bottom:20px}
.od-office-grid>div>p{font-size:15px}
.od-office-map{min-height:340px;padding:40px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:repeating-linear-gradient(30deg,transparent 0,transparent 55px,#163a5f08 55px,#163a5f08 57px),repeating-linear-gradient(120deg,#e6eff3 0,#e6eff3 80px,#163a5f09 80px,#163a5f09 83px);border:1px solid var(--od-line);border-radius:18px}
.od-map-marker{display:grid;place-items:center;background:#fff;color:var(--od-accent);border:1px solid var(--od-line);width:76px;height:76px;border-radius:50%;font-size:44px;margin-bottom:18px}
.od-office-map>p{background:#e6eff3;padding:6px 12px;line-height:1.8}
.od-location-links{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.od-location-links li{margin:0}
.od-location-links a{display:flex;align-items:center;gap:25px;padding:12px 18px;border:1px solid var(--od-line);border-radius:8px;background:#fff;font-size:13px;min-height:46px}
.od-location-links a:hover{background:var(--od-navy);color:#fff;text-decoration:none}
.od-page-banner{min-height:250px;padding:65px 32px 55px;background:var(--od-mist);border-bottom:1px solid var(--od-line)}
.od-page-banner::before{display:none}
.od-page-banner h1{font-size:clamp(34px,4vw,52px);line-height:1.2;max-width:1000px;margin-bottom:26px;letter-spacing:-1px}
.od-breadcrumb li{padding:0;border:0;font:400 12px/1.7 var(--od-body)}
.od-breadcrumb li+li{margin-left:8px}
.od-breadcrumb li+li::before{margin-left:-16px;margin-right:10px}
.od-content-layout{padding-top:64px;padding-bottom:90px;gap:64px}
.od-guide-content{padding-top:64px;padding-bottom:90px;max-width:1120px}
.od-guide-content>p,.od-guide-content>h2,.od-guide-content>.wp-block-details{max-width:900px;margin-inline:auto}
.od-guide-content>h2{padding-top:15px}
.od-guide-content>.od-discovery-grid .od-discovery-card{background:var(--od-mist)}
.od-guide-content .od-discovery-card p{max-height:none}
.od-prose{color:#3d515e}
.od-prose h2{font-size:30px;line-height:1.3;scroll-margin-top:110px}
.od-prose h3{font-size:24px;line-height:1.4}
.od-prose a:not(.wp-block-button__link):not(.od-button){text-underline-offset:5px}
.od-prose .od-discovery-card a{text-decoration:none}
.od-prose .od-location-links a,.od-prose .od-work-links a{text-decoration:none}
.od-prose .od-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.od-contents{margin-bottom:40px;padding:22px 26px;border:1px solid var(--od-line);border-radius:10px;background:var(--od-mist)}
.od-contents summary{font-size:15px;min-height:30px;color:var(--od-navy);font-weight:600}
.od-contents ol{padding-left:22px;font-size:14px;line-height:1.9}
.od-contents li{margin-bottom:8px}
.od-location-aside{position:sticky;top:120px;align-self:start;background:var(--od-mist);border:1px solid var(--od-line);padding:30px;border-radius:14px}
.od-location-aside h2{font-size:27px;line-height:1.4}
.od-location-aside address,.od-location-aside p{font-size:14px;margin-bottom:24px}
.od-location-aside .od-button{font-size:12px;padding-inline:20px;margin-bottom:24px}
.od-related-discovery{padding:65px 0;background:var(--od-mist);border-top:1px solid var(--od-line)}
.od-related-discovery h2{font-size:34px}
.od-related-links{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.od-related-links a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid var(--od-line);font-size:14px}
.od-footer{background:var(--od-navy);padding-top:70px}
.od-footer h2{font-family:var(--od-body);font-size:14px;letter-spacing:.02em;color:#fff}
.od-footer-grid{grid-template-columns:1.2fr 1fr .8fr 1.2fr;gap:40px}
.od-footer-discovery{display:grid;grid-template-columns:1fr 2fr;gap:55px;margin-top:40px;padding-top:32px;border-top:1px solid #ffffff25}
.od-footer-discovery ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px}
.od-footer-discovery a{font-size:12px}
.od-footer .od-location-links a{color:#fff;background:transparent;border-color:#ffffff40;padding:8px 12px;gap:14px}
.od-footer .od-location-links a:hover{background:#ffffff12}
.od-footer-bottom{padding-top:30px;margin-top:35px}
.od-mobile-contact{display:none}
@media(min-width:1200px){
 .js .od-header .od-menu-toggle{display:none}
 .js .od-header .od-navigation{display:block}
 .od-header .od-navigation>.od-menu{display:flex}
 .od-header .od-navigation .sub-menu{position:absolute;top:100%;left:0}
}
@media(min-width:1200px){
 .od-header .od-navigation:has(>.od-service-menu){min-width:0}
 .od-header .od-navigation>.od-service-menu{flex-wrap:wrap;justify-content:flex-start;gap:0 4px}
 .od-header .od-service-menu>li:is(:hover,:focus-within,.is-expanded){z-index:2}
 .od-header .od-service-menu .sub-menu{width:310px;max-height:calc(100dvh - 165px);overflow:auto;overscroll-behavior:contain}
}
@media(max-width:1199px){
 .od-logo,.home .od-logo{flex:1}
 .js .od-header .od-menu-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  order: 3;
  flex-shrink: 0;
 }
 .od-header .od-menu-toggle::after {
  content: "";
  width: 7px;
  height: 7px;
  border: solid currentColor;
  border-width: 0 2px 2px 0;
  transform: translateY(-2px) rotate(45deg);
 }
 .od-header .od-menu-toggle[aria-expanded="true"]::after {
  transform: translateY(2px) rotate(225deg);
 }
 .js .od-header .od-navigation{display:none}
 .js .od-header .od-navigation.is-open{display:block;position:fixed;inset:90px 0 0;padding:24px 32px 90px;background:#fff;overflow:auto;max-height:calc(100dvh - 90px)}
 .js .od-header .od-navigation.is-open>.od-menu{display:block}
 .js .od-header .od-navigation a{font-size:16px;padding:15px 44px 15px 0;white-space:normal}
 .js .od-header .od-navigation .sub-menu{position:static;box-shadow:none;border:0;padding:0 0 12px 18px;background:var(--od-mist);max-width:none}
 .js .od-header .od-navigation .sub-menu a{font-size:14px;padding:12px}
 .js .od-header .od-navigation .od-submenu-toggle{min-width:44px;min-height:54px}
 .js .od-header .od-navigation li:hover>.sub-menu{display:none}
 .js .od-header .od-navigation li.is-expanded>.sub-menu{display:block}
 .admin-bar .od-header .od-navigation.is-open{top:122px}
}
@media(min-width:1024px){.od-content-layout{grid-template-columns:minmax(0,1fr) 330px}}
@media(max-width:1023px){
 .od-quick-links li{padding:20px 10px}.od-quick-links a{font-size:12px;gap:10px}
 .od-reference-about-grid{gap:36px}.od-discovery-card{padding:28px 22px}
 .od-office-grid{gap:32px}.od-footer-grid{grid-template-columns:1fr 1fr}
 .od-content-layout{gap:40px}.od-location-aside{position:static}
 .od-related-links{grid-template-columns:1fr 1fr}
}
@media(max-width:767px){
 .od-container{padding-inline:22px}.od-section{padding-inline:22px}
 .od-header-inner,.home .od-header-inner{min-height:78px;padding:8px 20px;gap:14px}
 .od-logo img,.home .od-logo img{width:200px;height:58px;max-height:58px}
 .od-header-cta,.home .od-header-cta{display:none}
 .js .od-header .od-navigation.is-open{inset:78px 0 0;max-height:calc(100dvh - 78px);padding-inline:24px}
 .admin-bar .od-header,.home.admin-bar .od-header{top:0}
 .admin-bar .od-header .od-navigation.is-open{top:78px}
 .od-hero-editorial{min-height:0}
 .od-hero-editorial .od-hero-inner{width:100%;min-height:0;padding:45px 24px 0}
 .od-hero-editorial .od-hero-copy{width:100%;max-width:540px}
 .od-hero-editorial .od-hero-copy h1{font-size:31px;letter-spacing:-.8px}
 .od-hero-editorial .od-hero-copy h1 em{font-size:clamp(48px,14.5vw,74px);white-space:normal}
 .od-hero-editorial .od-hero-copy .od-hero-lead{font-size:15px;max-width:480px}
 .od-hero-editorial .od-hero-visual{position:relative;left:auto;inset:auto;width:calc(100% + 48px);height:370px;margin:10px -24px 0}
 .od-hero-editorial .od-hero-image{max-width:540px;mask-image:linear-gradient(to right,transparent,#000 22%,#000 84%,transparent),linear-gradient(to bottom,transparent,#000 20%,#000 79%,transparent 100%)}
 .od-hero-editorial .od-hero-handnote{top:5%;left:6%;font-size:26px}
 .od-quick-links{grid-template-columns:1fr 1fr}
 .od-quick-links li{padding:15px 4px}.od-quick-links li:nth-child(3){border-left:0}
 .od-quick-links li:nth-child(n+3){border-top:1px solid var(--od-line)}
 .od-quick-links a{font-size:12px;gap:9px}.od-quick-icon{width:38px;height:38px;font-size:21px}
 .od-reference-about-grid{grid-template-columns:1fr;gap:35px}
 .od-reference-photo img{max-height:430px;object-position:center 26%;border-radius:140px 140px 12px 12px;max-width:380px;margin:auto}
 .od-reference-about-copy>p{font-size:15px}
 .od-discovery-grid,.od-prose .od-discovery-grid{grid-template-columns:1fr;gap:16px}
 .od-discovery-card{padding:28px}.od-discovery-card h3{font-size:24px}
 .od-work-links{grid-template-columns:1fr 1fr;gap:0 20px}
 .od-work-links a{font-size:13px;gap:12px;min-height:85px;line-height:1.6}
 .od-service-cards .od-feature-card{padding:28px}.od-process{margin-top:35px}
 .od-process-card{padding-left:45px}.od-process-card h3{font-size:24px}
 .od-office-grid{grid-template-columns:1fr;gap:30px}
 .od-office-map{min-height:300px;padding:30px 20px}
 .od-page-banner{min-height:210px;padding:48px 22px 38px}
 .od-page-banner h1{font-size:33px;letter-spacing:-.7px}
 .od-breadcrumb li{font-size:11px}
 .od-guide-content,.od-content-layout{padding-top:40px;padding-bottom:55px}
 .od-prose h2{font-size:27px}.od-contents{padding:18px}
 .od-related-discovery h2{font-size:29px}.od-related-links a{font-size:13px;gap:8px}
 .od-footer-grid{grid-template-columns:1fr;gap:32px}
 .od-footer-discovery{grid-template-columns:1fr;gap:25px}
 .od-footer-bottom{padding-bottom:90px}
 .od-whatsapp{display:none}
 .od-mobile-contact{position:fixed;z-index:90;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 -2px 16px #163a5f15;background:#fff;padding-bottom:env(safe-area-inset-bottom)}
 .od-mobile-contact a{display:flex;align-items:center;justify-content:center;gap:10px;font-size:12px;font-weight:600;min-height:54px;background:var(--od-navy);color:#fff}
 .od-mobile-contact a+a{background:#fff;color:var(--od-navy);border-top:1px solid var(--od-line)}
}
@media(max-width:359px){.od-hero-editorial .od-hero-copy h1{font-size:28px}.od-hero-editorial .od-hero-copy h1 em{font-size:42px;white-space:nowrap}.od-hero-editorial .wp-block-button__link{padding:12px 16px;font-size:11px}.od-quick-links a{font-size:11px}.od-quick-icon{width:31px;height:31px}.od-work-links{grid-template-columns:1fr}.od-hero-editorial .od-hero-visual{height:330px}}
@media print{.od-mobile-contact,.od-contents,.od-related-discovery,.od-location-aside{display:none}.od-guide-content{max-width:none;padding:0}.od-page-banner{min-height:0;padding:20px}}

.od-service-directory{margin:2rem 0 3rem}.od-topic-guide{margin-top:3rem}.od-topic-guide h2{scroll-margin-top:120px}.od-topic-guide>p:last-child{margin-top:1.5rem}

.od-subservice-links,.od-subservice-list ul{padding-inline-start:1.25rem;line-height:1.55}
.od-subservice-links li,.od-subservice-list li{margin-block:.45rem}
.od-subservice-list{margin-block:1.5rem 2rem}
.od-subservice-list a,.od-discovery-card .od-subservice-links a{font:inherit;text-decoration:underline;text-underline-offset:.16em}
