/* Density additions reuse the theme's navy, gold, borders and type. */
.density-service-photo{position:relative;margin:-24px -24px 24px;aspect-ratio:16/9;overflow:hidden}
.density-service-photo img{width:100%;height:100%;object-fit:cover}
.home-intent-grid .density-service-photo{margin:-32px -32px 24px}
.home-post-summary{display:block!important;overflow:visible;-webkit-line-clamp:unset}
.home-post-card>a{flex-direction:column}
.density-service-photo:after{content:'';position:absolute;inset:0;background:#102a4d;opacity:0;transition:opacity .2s;pointer-events:none}
.home-intent-card:hover .density-service-photo:after,.home-intent-card:focus-within .density-service-photo:after{opacity:.14}
.home-intent-card ul{list-style:none;padding:0}
.home-intent-card li a{display:flex;gap:10px;padding-block:4px}
.density-tools{background:#f5f7fa}
.density-tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.density-tool-grid article{display:flex;flex-direction:column;align-items:flex-start;padding:24px;background:#fff;border:1px solid #e7ebef}
.density-tool-grid h3{font:600 20px/1.3 Inter,sans-serif;color:#102a4d;margin:16px 0 12px}
.density-tool-grid p{margin:0 0 16px}.density-tool-grid a{margin-top:auto}
.density-services-nav{display:flex;align-items:center}
.density-menu-toggle{border:0;background:transparent;color:#102a4d;padding:8px;cursor:pointer;font-size:12px}
.density-mega[hidden]{display:none!important}
.density-mega{position:absolute;top:100%;left:max(20px,calc((100% - 1160px)/2));right:max(20px,calc((100% - 1160px)/2));display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:26px;background:#fff;border:1px solid #102a4d;box-shadow:0 12px 24px #102a4d14;max-height:calc(100dvh - 125px);overflow:auto;z-index:100}
body:is(.home,.theme-inner) .density-mega h2{font:600 16px/1.4 Inter,sans-serif;letter-spacing:0;margin:0 0 14px;color:#102a4d}
.home-navigation .density-mega ul{display:block;padding:0;margin:0;list-style:none}
.home-navigation .density-mega a{display:block;text-transform:none;letter-spacing:0;padding:5px 8px;font-size:14px;line-height:1.5}
.home-navigation .density-mega a:after{display:none}.density-mega a:hover,.density-mega a:focus-visible{background:#f5f7fa;color:#102a4d;outline:1px solid #c9a24a}
.density-menu-toggle:focus-visible{outline:2px solid #c9a24a;outline-offset:2px}
.density-insight-thumbnail{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.density-service-detail,.density-calculator-page{padding-block:64px}.density-service-detail{max-width:850px}.density-service-detail p{margin-block:20px}
.density-calculator{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px;margin-block:32px;align-items:start}
.density-calc-inputs{display:grid;gap:20px}.density-calc-inputs label{display:grid;gap:8px;color:#102a4d;font-weight:500}
.density-calc-inputs input,.density-calc-inputs select{width:100%;padding:12px;border:1px solid #c8d0db;background:#fff;color:#102a4d;border-radius:0;font:inherit;min-width:0}
.density-calc-inputs input:focus,.density-calc-inputs select:focus{outline:2px solid #c9a24a;outline-offset:2px}
.density-calc-results{padding:28px;background:#f5f7fa;border:1px solid #e7ebef}.density-calc-results h2{font-size:26px}.density-calc-results dl{margin:20px 0}.density-calc-results dl div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #102a4d20}.density-calc-results dd{margin:0;text-align:right;color:#102a4d;font-weight:600;white-space:nowrap}
.density-review-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;object-fit:cover;background:#f5f7fa}.density-stars{color:#a07823}
@media(max-width:1100px){.density-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:768px) and (max-width:1000px){.home-intent-grid .density-service-photo{margin:-24px -24px 24px}}
@media(max-width:900px){.home-intent-grid{grid-template-columns:1fr}.density-services-nav{flex-wrap:wrap}.density-services-nav>a{flex:1}.density-mega{position:static;flex-basis:100%;max-height:50dvh;gap:20px;padding:18px;grid-template-columns:1fr}.home-navigation.is-open{max-height:calc(100dvh - 100px);overflow-y:auto}.density-calculator{grid-template-columns:1fr}}
@media(max-width:540px){.density-tool-grid{grid-template-columns:1fr}.density-service-detail,.density-calculator-page{padding-block:40px}.density-calc-results{padding:20px}.density-calc-results dl div{flex-wrap:wrap;gap:6px}.density-service-photo{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){.density-service-photo:after{transition:none}}

/* Services only: compact columns and native, progressively enhanced lists. */
body:is(.home,.theme-inner) #services{padding-block:72px;background-color:#102a4d;background-image:radial-gradient(ellipse at 50% 40%,rgb(255 255 255 / 6%) 0%,transparent 70%),repeating-linear-gradient(135deg,rgb(255 255 255 / 3%) 0 1px,transparent 1px 24px);box-shadow:inset 0 1px rgb(201 162 74 / 20%),inset 0 -1px rgb(201 162 74 / 20%)}
body:is(.home,.theme-inner) #services .home-section-heading{margin:0 0 40px}
body:is(.home,.theme-inner) #services .home-section-heading>.home-eyebrow{margin-bottom:16px!important}
body:is(.home,.theme-inner) #services .home-section-heading h2{margin-bottom:14px;color:#fff}
body:is(.home,.theme-inner) #services .home-section-heading>.home-supporting-intro{max-width:760px;margin-bottom:0;color:rgb(255 255 255 / 72%)}
#services .home-intent-grid{gap:0;align-items:stretch}
#services .home-intent-card{min-height:0;padding:28px;border:0;border-radius:2px;background:rgb(255 255 255 / 3%);box-shadow:none;transition:background-color 200ms ease;align-items:flex-start}
#services .home-intent-card+.home-intent-card{border-left:1px solid rgb(255 255 255 / 12%)}
#services .home-intent-card:before{display:none}
#services .home-intent-card:hover,#services .home-intent-card:focus-within{background:rgb(255 255 255 / 6%);transform:none;box-shadow:none}
#services .services-category-icon{display:block;width:32px;height:32px;flex-shrink:0;color:#c9a24a;transition:color 200ms ease}
#services .services-category-icon svg{display:block;width:32px;height:32px;stroke-width:1.5px}
#services .services-category-icon path{vector-effect:non-scaling-stroke}
#services .home-intent-card:hover .services-category-icon{color:#dfba61}
body:is(.home,.theme-inner) #services .home-intent-card h3{font:600 20px/1.3 Inter,sans-serif;font-size:20px!important;margin:8px 0 8px;color:#fff}
body:is(.home,.theme-inner) #services .services-category-description{font:400 16px/1.5 Inter,sans-serif;margin:0;color:rgb(255 255 255 / 70%)}
#services .services-category-description span{display:block}
#services .services-category-rule{display:block;width:32px;height:1px;background:#c9a24a;margin:10px 0 14px}
#services .home-intent-card ul{display:grid;gap:10px;padding:0;margin:0;list-style:none;width:100%}
#services .home-intent-card li{margin:0}
#services .home-intent-card li a{display:flex;align-items:baseline;gap:10px;padding:0;font:400 16px/1.5 Inter,sans-serif;color:rgb(255 255 255 / 88%);transition:color 200ms ease,transform 200ms ease}
#services .home-intent-card li a>span{color:#dfba61;font-size:14px;flex-shrink:0}
#services .home-intent-card li a:hover,#services .home-intent-card li a:focus-visible{color:#dfba61!important;transform:translateX(4px)}
#services .services-disclosure{width:100%;margin-top:12px}
#services .services-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;font:500 14px/1.6 Inter,sans-serif;color:#dfba61;padding:0}
#services .services-disclosure summary::-webkit-details-marker{display:none}
#services .services-disclosure summary svg{transition:transform 300ms ease}
#services .services-disclosure summary[aria-expanded=true] svg,#services .services-disclosure[open] summary:not([aria-expanded=false]) svg{transform:rotate(180deg)}
#services .services-extra{overflow:hidden;transition:height 300ms cubic-bezier(.2,.8,.2,1)}
#services .services-extra ul{padding-top:16px;padding-bottom:4px}
body:is(.home,.theme-inner) #services .home-intent-cta{display:flex;justify-content:flex-start;gap:8px;font:600 12px/1.5 Inter,sans-serif;color:#dfba61;letter-spacing:.08em;margin:14px 0 0;padding:0;border:0}
#services .home-intent-cta span{transform:none}
body:is(.home,.theme-inner) #services .home-intent-cta:hover,body:is(.home,.theme-inner) #services .home-intent-cta:focus-visible{color:#dfba61!important}
@media(max-width:900px){#services .home-intent-grid{grid-template-columns:1fr}#services .home-intent-card+.home-intent-card{border-left:0;border-top:1px solid rgb(255 255 255 / 12%)}}
@media(prefers-reduced-motion:reduce){#services .services-extra,#services .services-disclosure summary svg,#services .home-intent-card,#services .home-intent-card li a,#services .services-category-icon{transition:none!important}#services .home-intent-card li a:hover{transform:none}}

/* About only: small, layered authentic prints and a centred reading column. */
body:is(.home,.theme-inner) #founder.home-firm{padding-block:72px;background:#f5f7fa}
#founder .home-firm-layout{grid-template-columns:42% minmax(0,1fr);align-items:center;gap:48px}
body:is(.home,.theme-inner) #founder .home-firm-copy{padding:24px 0;max-width:none}
body:is(.home,.theme-inner) #founder .home-firm-copy>p:not(.home-eyebrow){font-size:17px;line-height:1.75;margin:0 0 18px}
#founder .about-collage{position:relative;isolation:isolate;width:100%;max-width:504px;aspect-ratio:9/10;margin:0 auto}
#founder .about-photo-frame{position:absolute;left:16%;top:6%;width:72%;aspect-ratio:4/5;border:1px solid #c9a24a;z-index:-1}
#founder .about-main-reveal{position:absolute;left:12%;top:10%;width:72%;aspect-ratio:4/5}
#founder .about-main-photo{position:relative;height:100%;overflow:hidden;border:2px solid #fff;box-shadow:0 14px 30px #102a4d18}
#founder .about-photo-slide{position:absolute;inset:0;opacity:0;transition:opacity 700ms ease;pointer-events:none}
#founder .about-photo-slide.is-current{opacity:1}
#founder .about-photo-slide img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 300ms ease}
#founder .about-photo-slide:nth-child(2) img{object-position:center 25%}
#founder .about-small-reveal{position:absolute;width:32.4%;aspect-ratio:4/3;z-index:2}
#founder .about-small-lower{left:0;bottom:3%}
#founder .about-small-upper{right:0;top:2%}
#founder .about-print{height:100%;border:2px solid #fff;box-shadow:0 8px 22px #102a4d26;overflow:hidden;transition:transform 300ms ease}
#founder .about-print img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.07)}
#founder .about-small-upper img{object-position:center 15%}
body:is(.home,.theme-inner) #founder .about-pull-quote{border-left:3px solid #c9a24a;padding-left:18px;margin:0 0 24px;color:#102a4d;font:italic 400 20px/1.5 'Source Serif 4',Georgia,serif}
#founder .about-assurance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;padding:0;margin:26px 0 20px}
#founder .about-assurance-grid li{display:flex;gap:10px;padding:16px 12px 16px 0;border-bottom:1px solid #e7ebef}
#founder .about-assurance-grid li:nth-child(even){border-left:1px solid #e7ebef;padding-left:18px}
#founder .about-assurance-grid li:nth-last-child(-n+2){border-bottom:0}
#founder .about-assurance-grid svg{width:18px;height:18px;flex-shrink:0;color:#c9a24a;margin-top:3px;stroke-width:1.5}
#founder .about-assurance-grid strong{display:block;font:600 16px/1.5 Inter,sans-serif;color:#102a4d}
body:is(.home,.theme-inner) #founder .about-assurance-grid p{font:400 14px/1.6 Inter,sans-serif;color:#596779;margin:4px 0 0}
#founder .about-facts{display:flex;list-style:none;padding:16px 0;margin:0 0 24px;border-block:1px solid #e7ebef;gap:14px}
#founder .about-facts li{font:500 12px/1.5 Inter,sans-serif;color:#596779}
#founder .about-facts li+li{border-left:1px solid #e7ebef;padding-left:14px}
#founder .about-cta-row{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
#founder .about-more-link{color:#a07823;font:500 14px/1.5 Inter,sans-serif}
@media(prefers-reduced-motion:no-preference){
#founder .about-small-lower img{animation:about-print-drift-lower 6s ease-in-out infinite alternate}
#founder .about-small-upper img{animation:about-print-drift-upper 6s ease-in-out infinite alternate}
@keyframes about-print-drift-lower{from{transform:scale(1.07) translateY(-3px)}to{transform:scale(1.07) translateY(3px)}}
@keyframes about-print-drift-upper{from{transform:scale(1.07) translateY(3px)}to{transform:scale(1.07) translateY(-3px)}}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
#founder .about-collage:hover .about-small-lower .about-print{transform:translate(-5px,5px)}
#founder .about-collage:hover .about-small-upper .about-print{transform:translate(5px,-5px)}
#founder .about-collage:hover .about-photo-slide img{transform:scale(1.02)}
}
@media(max-width:1000px){#founder .home-firm-layout{gap:28px}#founder .about-facts{gap:10px}#founder .about-facts li+li{padding-left:10px}}
@media(max-width:900px){#founder .home-firm-layout{grid-template-columns:1fr;gap:32px}#founder .about-collage{max-width:400px}body:is(.home,.theme-inner) #founder .home-firm-copy{padding:16px 8px}}
@media(max-width:540px){#founder .about-collage{max-width:330px}#founder .about-small-reveal{width:30%}#founder .about-facts{gap:8px}#founder .about-facts li{font-size:11px}#founder .about-facts li+li{padding-left:8px}#founder .about-cta-row{gap:18px}#founder .about-assurance-grid li:nth-child(even){padding-left:12px}}
@media(prefers-reduced-motion:reduce){#founder .about-collage *,#founder .home-firm-copy>*{animation:none!important;transition:none!important}#founder .about-photo-slide img,#founder .about-print img{transform:none!important}}
