@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#181b20;--navy-deep:#101216;--navy-soft:#30343c;--gold:#505863;--gold-light:#e2e5e8;--red:#25282d;--ink:#171b21;--body:#58616d;--line:#e7e9ec;--cream:#f5f6f7;--white:#fff;--shadow:0 24px 65px rgba(10,13,18,.14)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font:400 15px/1.78 'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}body.nav-open{overflow:hidden}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}::selection{background:#e0e3e6;color:#1a1c20}:focus-visible{outline:3px solid #525862;outline-offset:4px}.container{width:min(100% - 72px,1200px);margin-inline:auto}.skip-link{position:absolute;top:-100px;left:10px;z-index:1000;color:#fff;background:var(--navy);padding:9px 17px}.skip-link:focus{top:8px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;letter-spacing:-.044em;line-height:1.2}h1{font-size:clamp(44px,5.1vw,74px);font-weight:800}h2{font-size:clamp(30px,3.2vw,48px);font-weight:800}h3{font-size:clamp(17px,1.65vw,23px)}p{color:var(--body)}.centered{text-align:center}.section{padding:104px 0}.cream{background:var(--cream)}.section-heading{margin-bottom:42px;max-width:770px}.section-heading.centered{margin-inline:auto}.section-heading h2{margin:15px 0 15px}.section-heading p{margin:0;font-size:16px;line-height:1.78}.eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--gold);font-size:11px;font-family:Manrope,Arial,sans-serif;font-weight:800;letter-spacing:2.1px;text-transform:uppercase;line-height:1.55}.eyebrow::before{content:"";width:26px;flex:0 0 26px;height:1px;background:currentColor}.eyebrow-light{color:var(--gold-light)}.accent-line{width:57px;height:3px;background:var(--gold);margin:24px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:17px;padding:14px 23px;min-height:49px;font-size:12px;font-weight:800;letter-spacing:.015em;font-family:Manrope,Arial,sans-serif;line-height:1.3;text-align:center;border:1px solid transparent;transition:background .2s,transform .2s,border-color .2s;white-space:normal}.btn:hover{transform:translateY(-2px)}.btn svg{flex:none}.btn-gold{background:#20252c;border-color:#20252c;color:#fff}.btn-gold:hover{background:#171b20;border-color:#171b20;color:#fff}.btn-navy{color:#fff;background:var(--navy);border-color:var(--navy)}.btn-navy:hover{background:#343943}.btn-outline{border-color:#fff9;color:#fff;background:#ffffff08}.btn-outline:hover{background:#ffffff1d}.text-link{display:inline-flex;align-items:center;gap:13px;color:#22252b;font-size:12px;font-weight:800;font-family:Manrope,Arial,sans-serif;border-bottom:1px solid var(--gold);padding-bottom:6px}.text-link:hover{color:#20252c}.text-link svg{width:16px}.section-action{margin-top:38px}
/* Reference site navigation: restrained utility bar, white main navigation */
.topbar{background:#101215;color:#e0e2ea;font-size:11px}.topbar-inner{min-height:38px;display:flex;justify-content:space-between;align-items:center;gap:18px}.topbar-address,.topbar-links,.topbar-links a{display:inline-flex;align-items:center;gap:7px}.topbar svg{height:15px;width:15px;color:#c8ccd1}.topbar-links{gap:24px}.topbar-links a:hover{color:#c8ccd1}.nav-shell{position:sticky;top:0;background:#fff;z-index:80;box-shadow:0 2px 20px #181b200e}.nav-inner{min-height:101px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;flex:0 0 260px;width:260px}.brand img{width:260px;height:auto;max-height:80px;object-fit:contain}.nav-links{display:flex;gap:18px;margin-left:auto;align-items:center}.nav-link{font-size:11.5px;font-weight:800;color:#22252b;white-space:nowrap;position:relative;padding:12px 0}.nav-link::after{content:"";position:absolute;bottom:6px;left:0;right:100%;height:2px;background:var(--gold);transition:right .2s}.nav-link.active::after,.nav-link:hover::after{right:0}.nav-link.active{color:#20252c}.nav-cta{padding:13px 17px;min-height:44px;white-space:nowrap;font-size:11px}.menu-open{display:none;background:transparent;border:1px solid #e3e3e3;color:var(--navy);width:44px;height:44px;align-items:center;justify-content:center;margin-left:auto}.mobile-backdrop{position:fixed;inset:0;background:#101215b3;z-index:85;visibility:hidden;opacity:0;transition:opacity .2s,visibility .2s}.mobile-backdrop.visible{opacity:1;visibility:visible}.mobile-panel{position:fixed;right:0;top:0;bottom:0;z-index:90;display:block;width:min(89vw,380px);padding:24px;background:white;overflow-y:auto;transform:translateX(105%);box-shadow:-15px 0 60px #1012153d;transition:transform .23s}.mobile-panel.open{transform:translateX(0)}.mobile-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:25px;border-bottom:1px solid var(--line)}.mobile-head img{width:175px;height:auto}.mobile-head button{background:#eff0f2;border:0;color:var(--navy);font-size:26px;line-height:1;width:39px;height:39px}.mobile-links{display:flex;flex-direction:column;margin:14px 0 27px}.mobile-links a{padding:13px 3px;border-bottom:1px solid #efeee9;font-size:14px;font-weight:700}.mobile-cta{width:100%}
/* Full-bleed image, overlaid text: matches original Were reference hero */
.hero{min-height:665px;background:#111318;color:#fff;position:relative;isolation:isolate;display:flex;align-items:center;overflow:hidden}.hero::before{content:"";position:absolute;z-index:-2;inset:0;background-image:linear-gradient(90deg,rgba(5,14,32,.98) 0%,rgba(6,16,36,.94) 31%,rgba(7,19,41,.79) 57%,rgba(5,14,31,.15) 100%),var(--hero-image);background-position:center;background-size:cover}.hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(4,12,30,.39),transparent 24%)}.hero-inner{width:min(100% - 72px,1200px);padding:88px 0 119px}.hero-copy{max-width:725px}.hero h1{color:#fff;margin:24px 0 27px;line-height:1.15}.hero h1 em{color:var(--gold-light);font-style:normal}.hero-copy p{color:#d8dade;max-width:570px;font-size:16px;line-height:1.85}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.hero-bottom{position:absolute;left:0;right:0;bottom:0;color:#e8eaf0;border-top:1px solid #fff3}.hero-bottom-inner{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:20px}.hero-notes{display:flex;align-items:center;gap:28px;font-size:11px}.hero-notes span{display:flex;align-items:center;gap:9px}.hero-notes span::before{content:"";height:6px;width:6px;background:var(--gold-light);border-radius:50%}.scroll-cue{font-weight:700;letter-spacing:1.4px;font-size:10px;white-space:nowrap}
/* Reference intro portrait treatment */
.intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:90px;align-items:center}.intro-picture{position:relative;min-width:0}.intro-picture>img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center 18%;box-shadow:var(--shadow)}.intro-picture::before{content:"";position:absolute;border-top:9px solid #e9ebed;border-left:9px solid #e9ebed;left:-25px;top:-24px;height:105px;width:105px;pointer-events:none;z-index:1}.picture-stamp{position:absolute;right:-22px;bottom:-22px;background:var(--navy);padding:23px 27px;color:white;box-shadow:var(--shadow);display:flex;flex-direction:column;line-height:1.3;min-width:164px}.picture-stamp small{font-size:10px;color:var(--gold-light);letter-spacing:2px;font-weight:700}.picture-stamp strong{font:800 30px Manrope,Arial,sans-serif;margin:5px 0}.picture-stamp span{font-size:10px;color:#e5e6e7}.intro-copy h2{margin:18px 0 0}.intro-copy h3{color:var(--navy);margin-bottom:14px}.intro-copy p{line-height:1.85;margin-bottom:16px}.intro-copy blockquote{font:600 16px/1.7 Manrope,Arial,sans-serif;border-left:3px solid var(--gold);padding:12px 0 12px 23px;margin:25px 0;color:#222832}
/* Image-led practice cards: no image stretching */
.practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.practice-card{height:340px;min-width:0;overflow:hidden;position:relative;background:#23262b;display:block;color:#fff}.practice-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .35s ease}.practice-card:hover>img{transform:scale(1.055)}.practice-shade{position:absolute;inset:0;background:linear-gradient(180deg,#1012150a 15%,#101215d5 70%,#101215ee 100%)}.practice-card-text{position:absolute;bottom:0;left:0;right:0;padding:27px 27px 25px}.card-number{font-size:10px;letter-spacing:2.2px;color:var(--gold-light);font-weight:700}.practice-card h3{font-size:19px;color:white;margin:9px 0 7px}.practice-card p{font-size:12px;line-height:1.5;color:#e3e8f0;max-width:285px;margin-bottom:0}.card-arrow{position:absolute;bottom:27px;right:24px}.card-arrow svg{width:19px;height:19px;color:#c8ccd1}
.purpose-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:95px;align-items:start}.purpose-grid h2{margin:18px 0 23px}.purpose-grid>div>p{font-size:16px;max-width:440px}.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px 40px}.value-grid>div{border-top:1px solid var(--line);padding-top:16px}.value-grid span,.three-values span{font-size:12px;color:var(--gold);font-weight:800;letter-spacing:2px}.value-grid h3{margin:10px 0 8px;font-size:17px}.value-grid p{font-size:13px;line-height:1.7}.two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:center}.two-column>div{min-width:0}.two-column h2{margin:17px 0 23px}.two-column p{font-size:15px;line-height:1.9}.two-column .btn{margin-top:15px}.section-navy{background:var(--navy);color:#fff}.section-navy h2{color:#fff}.section-navy p{color:#d4dce9}.decorative-photo,.picture-frame{width:100%;overflow:hidden}.decorative-photo img{width:100%;height:auto;aspect-ratio:6/4;object-fit:cover}.picture-frame img{width:100%;height:auto;aspect-ratio:1.19/1;object-fit:cover}.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.insight-card{min-width:0;border:1px solid #e7e5e0;background:white;padding:26px}.insight-image{display:block;overflow:hidden;background:#e4e4e0}.insight-image img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;transition:transform .3s}.insight-image:hover img{transform:scale(1.04)}.insight-copy{padding-top:17px}.overline{font-family:Manrope,Arial,sans-serif;font-size:10px;letter-spacing:1.8px;color:#20252c;font-weight:800}.insight-copy h3{font-size:20px;margin:23px 0 12px;line-height:1.35}.insight-copy h3 a:hover{color:#171b20}.insight-copy p{font-size:13px;line-height:1.8;min-height:53px}.insight-copy .text-link{margin-top:9px}
/* Inner pages */
.page-hero{background:radial-gradient(circle at 83% 32%,#31353b 0%,transparent 42%),linear-gradient(120deg,#181b20,#222830);color:white;padding:100px 0 95px}.page-hero h1{max-width:830px;font-size:clamp(40px,4.6vw,64px);margin:25px 0 22px}.page-hero p{color:#cdd5e3;max-width:630px;font-size:16px}.three-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.three-values article{background:#fff;padding:32px;min-width:0;border:1px solid var(--line)}.three-values h3{margin:15px 0 10px}.three-values p{font-size:13px}.reverse{direction:rtl}.reverse>*{direction:ltr}.jump-chips{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:35px}.jump-chips a{border:1px solid #DED6DA;color:#242b34;font-size:12px;font-weight:700;padding:8px 13px}.jump-chips a:hover{background:var(--navy);color:white}.practice-detail{padding:85px 0;scroll-margin-top:115px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:80px}.detail-grid.reverse{direction:rtl}.detail-grid.reverse>*{direction:ltr}.detail-photo img{width:100%;height:auto;aspect-ratio:5/4;object-fit:cover;object-position:center}.detail-copy h2{margin:16px 0 15px}.detail-copy h3{font-size:18px;font-weight:700;letter-spacing:-.018em;margin-bottom:16px;color:#343b44}.detail-copy>p{line-height:1.8}.detail-topics{font-size:12px;font-weight:700;color:#3a3c40;border-left:3px solid var(--gold);padding-left:17px;margin:25px 0!important}.profile-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:88px;align-items:center}.profile-photo{position:relative}.profile-photo>img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;box-shadow:var(--shadow)}.profile-body h2{margin:18px 0 6px}.profile-role{font-weight:800;font-size:11px;letter-spacing:1.4px;color:#20252c}.profile-body p{line-height:1.85}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.team-grid article{text-align:center;background:#fff;border:1px solid var(--line);padding:35px 22px}.initials{margin:0 auto 19px;border-radius:50%;width:79px;height:79px;background:#e4edf8;color:#20262f;display:grid;place-items:center;font:800 24px Manrope,Arial,sans-serif}.team-grid article:nth-child(2) .initials{background:#F9E5EA;color:#20252c}.team-grid article:nth-child(3) .initials{background:#f6e1e5;color:#2f3237}.team-grid h3{margin:0;font-size:18px}.team-grid span{font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:#50535a}.guide-article{padding:42px 46px;background:#fff;margin:0 auto 25px;scroll-margin-top:120px;max-width:900px}.guide-article h2{font-size:30px;margin:13px 0 24px}.guide-article p{line-height:1.9}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:start}.contact-copy h2{margin:17px 0 19px}.contact-copy p{margin-bottom:30px}.contact-line{display:flex;gap:16px;border-top:1px solid var(--line);padding:18px 0;align-items:flex-start}.contact-line>svg{color:#20252c;flex:none;margin-top:5px}.contact-line>div{display:flex;flex-direction:column;gap:4px;min-width:0}.contact-line strong{font-size:12px;text-transform:uppercase;letter-spacing:.8px}.contact-line a,.contact-line span{font-size:14px;overflow-wrap:anywhere}.contact-line a:hover{color:#20252c}.contact-form-shell{background:var(--cream);border:1px solid #dfe9e5;padding:35px}.contact-form-shell h3{font-size:26px;margin-bottom:6px}.contact-form-shell>p{font-size:13px}.contact-form-shell form{margin-top:22px}.contact-form-shell label{display:flex;flex-direction:column;font-size:12px;font-weight:700;gap:6px;margin-bottom:16px}.contact-form-shell input,.contact-form-shell select,.contact-form-shell textarea{border:1px solid #dcdedb;background:white;min-width:0;width:100%;padding:12px 13px;outline:none;border-radius:0;color:var(--ink)}.contact-form-shell textarea{resize:vertical}.contact-form-shell input:focus,.contact-form-shell textarea:focus,.contact-form-shell select:focus{border-color:var(--gold);box-shadow:0 0 0 2px #20252c22}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.contact-form-shell #form-status{font-size:12px;margin-top:14px;color:#555b65}.office-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.office-card{background:#fff;border:1px solid var(--line);padding:36px;min-width:0}.office-card h3{margin:17px 0}.office-card p{display:flex;align-items:flex-start;gap:10px;font-size:14px;min-height:75px}.office-card p svg{flex:0 0 18px;margin-top:4px}.legal-copy{max-width:850px}.legal-copy h2{margin-bottom:28px}.legal-copy h3{margin-top:30px}.legal-copy a{color:#20252c;text-decoration:underline}
/* Footer and the lone circular floating contact control */
.closing{background:#101216;color:white;padding:65px 0}.closing-inner{display:flex;gap:30px;align-items:center;justify-content:space-between}.closing h2{font-size:clamp(28px,3vw,40px);margin:15px 0 10px;color:white}.closing p{color:#ccd4e3;margin:0}.closing .btn{flex:none}.site-footer{background:#222a31;color:#d1d7e1;padding:80px 0 0}.footer-grid{display:grid;grid-template-columns:1.4fr .67fr .85fr 1.15fr;gap:50px;padding-bottom:72px}.footer-logo{max-width:300px;display:block;margin-bottom:19px;background:transparent!important;border:none!important;padding:0!important}.footer-logo img{width:100%;height:auto;object-fit:contain;background:transparent}.footer-about p{font-size:13px;color:#b5bdcc;max-width:280px}.site-footer h3{font:700 12px Manrope,Arial,sans-serif;letter-spacing:1px;color:white;margin:5px 0 24px}.footer-links{display:flex;flex-direction:column;gap:12px}.footer-links a{color:#b8c0d0;font-size:12px;line-height:1.65}.footer-links a:hover,.footer-bottom a:hover{color:var(--gold-light)}.site-footer address{font-style:normal;font-size:12px;color:#b8c0d0;line-height:1.75}.site-footer address strong{color:#fff}.footer-contact{margin-top:20px}.footer-bottom{padding:24px 0 28px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #ffffff27;color:#929bab;font-size:11px}.footer-bottom>div{display:flex;align-items:center;gap:17px;flex-wrap:wrap}.floating-contact{position:fixed;right:23px;bottom:23px;z-index:60;display:grid;place-items:center;background:#118b54;color:#fff;border-radius:50%;width:50px;height:50px;box-shadow:0 10px 25px #0003;transition:transform .2s}.floating-contact:hover{transform:translateY(-4px)}.floating-contact svg{width:26px;height:26px}.whatsapp-tooltip{position:absolute;right:69px;white-space:nowrap;border-radius:5px;background:#232a31;color:white;padding:8px 10px;font-size:11px;font-weight:700;opacity:0;visibility:hidden;transition:opacity .2s;pointer-events:none}.floating-contact:hover .whatsapp-tooltip,.floating-contact:focus-visible .whatsapp-tooltip{opacity:1;visibility:visible}.scroll-top{position:fixed;right:27px;bottom:84px;z-index:55;border:1px solid #ECE3E6;background:#fff;color:var(--navy);width:40px;height:40px;display:none;place-items:center;box-shadow:0 6px 25px #0002}.scroll-top.show{display:grid}
@media(max-width:1200px){.nav-inner{gap:15px}.brand,.brand img{width:220px;flex-basis:220px}.nav-links{gap:13px}.nav-cta{padding:12px}.intro-grid{gap:55px}.footer-grid{gap:29px}}
@media(max-width:1050px){.nav-links,.nav-cta{display:none}.menu-open{display:flex}.nav-inner{min-height:76px}.brand,.brand img{width:228px;flex-basis:228px}.footer-grid{grid-template-columns:1.2fr 1fr 1fr;gap:35px}.footer-grid>div:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:15px}.footer-grid>div:last-child h3{grid-column:1/-1;margin-bottom:0}.footer-contact{margin:0}.intro-grid,.two-column,.detail-grid{gap:45px}.contact-grid{gap:35px}}
@media(max-width:850px){.container{width:min(100% - 46px,1200px)}.section{padding:78px 0}.hero-inner{width:min(100% - 46px,1200px);padding:84px 0 105px}.hero{min-height:610px}.hero-bottom-inner{min-height:65px}.scroll-cue{display:none}.hero-notes{flex-wrap:wrap;gap:6px 20px}.intro-grid,.two-column,.purpose-grid,.profile-layout,.contact-grid{grid-template-columns:1fr;gap:45px}.intro-picture{max-width:510px}.intro-picture>img{max-height:540px}.purpose-grid{gap:25px}.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insight-card:last-child{grid-column:1/-1;max-width:470px;margin-inline:auto}.detail-grid{grid-template-columns:1fr;gap:30px}.detail-grid.reverse{direction:ltr}.detail-photo img{max-height:420px}.profile-photo{max-width:500px}.reverse{direction:ltr}.three-values{grid-template-columns:1fr 1fr}.office-grid{grid-template-columns:1fr}.office-card p{min-height:0}.page-hero{padding:80px 0}.closing-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:auto;display:block}.footer-grid>div:last-child h3{margin-bottom:20px}.footer-contact{margin-top:19px}}
@media(max-width:600px){.container{width:min(100% - 36px,1200px)}h1{font-size:clamp(38px,10vw,53px)}h2{font-size:clamp(28px,7vw,39px)}.topbar{display:none}.nav-inner{min-height:70px}.brand,.brand img{width:205px;flex-basis:205px}.hero{min-height:610px}.hero::before{background-image:linear-gradient(90deg,rgba(5,14,32,.96),rgba(6,16,36,.89) 48%,rgba(7,19,41,.58)),var(--hero-image);background-position:60% center}.hero-inner{width:min(100% - 36px,1200px);padding:66px 0 160px}.hero h1{margin:18px 0 19px}.hero-copy p{font-size:14px;line-height:1.8}.hero-actions{gap:11px}.hero-actions .btn{font-size:11px;width:100%;max-width:300px}.hero-notes{font-size:10px;gap:9px 14px}.hero-bottom-inner{min-height:87px}.intro-grid{gap:48px}.intro-picture::before{left:-12px;top:-14px;height:70px;width:70px;border-width:6px}.picture-stamp{right:0;bottom:-21px;padding:15px 20px;min-width:130px}.picture-stamp strong{font-size:25px}.section{padding:68px 0}.section-heading{margin-bottom:30px}.practice-grid,.insight-grid,.three-values,.team-grid{grid-template-columns:1fr;gap:15px}.practice-card{height:315px}.insight-card{padding:19px}.insight-card:last-child{max-width:none;grid-column:auto}.insight-image img{aspect-ratio:4/3}.insight-copy h3{font-size:19px;margin-top:16px}.insight-copy p{min-height:0}.value-grid{gap:20px}.detail-grid{gap:23px}.practice-detail{padding:65px 0}.detail-photo img{aspect-ratio:1.15/1}.page-hero{padding:70px 0}.page-hero h1{font-size:clamp(36px,9vw,52px)}.profile-photo{max-width:100%}.form-grid{grid-template-columns:1fr;gap:0}.contact-form-shell{padding:22px}.guide-article{padding:26px 22px}.guide-article h2{font-size:25px}.closing{padding:54px 0}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 22px;padding-bottom:40px}.footer-about{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;align-items:start}.floating-contact{width:60px;height:60px;right:15px;bottom:15px}.floating-contact svg{width:31px;height:31px}.scroll-top{right:23px;bottom:88px}.whatsapp-tooltip{display:none}}
@media(max-width:390px){.brand,.brand img{width:183px;flex-basis:183px}.container{width:min(100% - 30px,1200px)}.hero-actions .btn{max-width:none}.value-grid{grid-template-columns:1fr}.nav-inner{gap:10px}.footer-grid{grid-template-columns:1fr}.footer-about,.footer-grid>div:last-child{grid-column:auto}.practice-card{height:296px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:0s!important;animation-duration:0s!important}}

/* Macharia Waithaka: logo-derived turquoise, burgundy and antique-gold accents */
:root{--navy:#181b20;--navy-deep:#242a2c;--navy-soft:#3e454b;--gold:#5b6067;--gold-light:#d9dde0;--red:#4b4e55;--ink:#2d3438;--cream:#f5f8f6}
.btn-gold{background:#6c737b;border-color:#6c737b;color:#fff}.btn-gold:hover{background:#717780;border-color:#717780}
.nav-link.active,.text-link{color:#474e54}.nav-link::after,.accent-line,.hero-notes span::before{background:#a9aeb4}
.hero em{color:#e9ebee}.eyebrow{color:#5b6067}.eyebrow-light{color:#e0e4e8}
.intro-picture::before{border-color:#c9dcd5}.picture-stamp{background:#282f33}
.nav-shell{border-bottom:1px solid #d8e5dd}.site-footer{background:#20292e}.footer-bottom{border-color:#51575d}
.footer-logo img{max-height:130px;object-fit:contain;object-position:left}
.floating-whatsapp{position:fixed;right:23px;bottom:23px;z-index:60;width:50px;height:50px;background:#118b54;border-radius:50%;display:grid;place-items:center;box-shadow:0 10px 25px rgba(0,0,0,.20);transition:transform .2s ease;color:#fff}
.floating-whatsapp:hover{transform:translateY(-4px)}.floating-whatsapp svg{width:26px;height:26px;color:#fff}
.floating-whatsapp .whatsapp-tooltip{right:74px;white-space:nowrap}
@media(max-width:600px){.floating-whatsapp{width:60px;height:60px;right:15px;bottom:15px}.floating-whatsapp svg{width:33px;height:33px}.scroll-top{bottom:90px}}
/* Keep images proportional: never distort the portraits or photographic cards */
.intro-picture>img,.profile-photo>img,.detail-photo img,.insight-image img,.decorative-photo img,.picture-frame img{width:100%;height:auto;object-fit:cover}
.practice-card>img{width:100%;height:100%;object-fit:cover}
.brand{flex-basis:285px;width:285px}.brand img{max-width:285px;width:100%;max-height:78px;object-fit:contain;object-position:left}
.mobile-head img{width:235px;max-height:90px;object-fit:contain}
@media(max-width:1180px){.brand{flex-basis:235px;width:235px}.brand img{max-width:235px}}
@media(max-width:950px){.brand{flex-basis:260px;width:260px}.brand img{max-width:260px}}
@media(max-width:420px){.brand{flex-basis:210px;width:210px}.brand img{max-width:210px}.hero-notes span:nth-child(n+2){display:none}}
@media(prefers-reduced-motion:reduce){.floating-whatsapp{transition:none}}

/* Layout-specific components and phone/tablet safeguards */
.values-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.values-grid>div{border-top:1px solid #d7e5df;padding:25px 0 5px;min-width:0}
.values-grid strong{display:block;font:800 13px Manrope,Arial,sans-serif;color:#b8bcc0;margin-bottom:9px}
.values-grid h3{font-size:19px;margin:0 0 10px}.values-grid p{font-size:14px}
.service-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.service-pills a{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #d5e7df;background:#fff;padding:19px 22px;font-size:14px;font-weight:700;color:#2c3036;transition:border-color .2s}
.service-pills a:hover{border-color:#5b6067}.service-pills svg{flex-shrink:0;color:#5b6067}
.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:74px;align-items:start}
.contact-copy h2{margin:16px 0 18px}.contact-copy>p{max-width:495px}
.contact-details{display:grid;gap:19px;margin:32px 0}.contact-details>div{border-bottom:1px solid #e1e8e4;padding-bottom:17px;display:grid;gap:6px}
.contact-details strong{display:block;color:#2c3036;font-size:12px;letter-spacing:.4px}
.contact-details a{font-size:17px;font-weight:700;color:#5b6067;overflow-wrap:anywhere}
.contact-details span{color:#5c6473;overflow-wrap:anywhere}
.form-note{font-size:12px;margin-top:14px}
@media(max-width:950px){.contact-layout{grid-template-columns:1fr;gap:45px}}
@media(max-width:760px){.values-grid,.service-pills{grid-template-columns:1fr}.contact-form-shell{padding:25px 20px}}
@media(max-width:600px){.contact-copy h2{font-size:clamp(27px,8vw,40px)}.values-grid{gap:12px}.service-pills a{font-size:13px;padding:16px}.contact-details a{font-size:16px}}

/* Uploaded clearer portraits (2026-10-12). Use natural aspect-ratio scaling and crop, never distort. */
.intro-picture>img{object-fit:cover;object-position:center 24%;}
.profile-photo>img{object-fit:cover;object-position:center 39%;}

/* J Motseo Inc. monochrome brand refinements */
.topbar{background:#111318}.topbar svg{color:#c5c9cd}
.btn-gold{background:#16191e;border-color:#16191e;color:#fff}.btn-gold:hover{background:#3b424b;border-color:#3b424b}
.hero .btn-gold{background:#f4f5f6;color:#111317;border-color:#f4f5f6}.hero .btn-gold:hover{background:#d7dbdf;border-color:#d7dbdf}
.hero::before{background-image:linear-gradient(90deg,rgba(9,11,15,.97) 0%,rgba(9,11,15,.93) 32%,rgba(9,11,15,.67) 58%,rgba(9,11,15,.14) 100%),var(--hero-image)}
.nav-shell{box-shadow:0 2px 20px rgba(20,20,20,.05)}
.brand{flex-basis:222px;width:222px}.brand img{width:222px;max-height:85px}
.footer-logo img{max-width:250px;width:100%;height:auto;object-fit:contain}
.intro-picture>img,.decorative-photo img,.detail-photo img,.insight-image img,.profile-photo img{display:block;max-width:100%;width:100%;height:100%;object-fit:cover;object-position:center;}
.intro-picture>img{aspect-ratio:1/1;object-position:center 17%}
.detail-photo,.decorative-photo,.profile-photo{overflow:hidden}
.detail-photo img{aspect-ratio:1 / .9}
.profile-photo img{object-position:center top;}
.insight-image img{aspect-ratio:1.36/1;object-fit:cover}
.picture-stamp{background:#191c20}.picture-stamp small{color:#e1e3e7}
.eyebrow-light,.hero h1 em{color:#e7e9ec}
.practice-card{background:#171b20}
.floating-whatsapp{background:#118b54 !important;border:0 !important;box-shadow:0 10px 25px rgba(0,0,0,.17) !important}
.floating-whatsapp svg{fill:#fff !important;color:#fff !important}
.contact-details a{overflow-wrap:anywhere}
@media(max-width:950px){.brand,.brand img{max-width:200px;width:200px;flex-basis:auto}}
@media(max-width:600px){.hero::before{background-image:linear-gradient(90deg,rgba(9,11,15,.88),rgba(9,11,15,.72)),var(--hero-image);background-position:center}.brand,.brand img{max-width:160px;width:160px}.intro-picture>img{aspect-ratio:4 / 4.3}}

/* P. Bezuidenhout colour system: dominant black/white, green accent from original logo. */
:root{--navy:#171b1c;--navy-deep:#0e1011;--navy-soft:#363b3b;--gold:#43846a;--gold-light:#a6d5bb;--red:#398267;--ink:#17191b;--body:#62666a;--line:#e4e8e6;--cream:#f6f8f7;--white:#fff;--shadow:0 24px 60px rgba(20,30,25,.13)}
body{color:var(--ink)}.topbar{background:#171b1c}.nav-shell{background:#fff}.nav-link.active,.text-link,.eyebrow,.card-number{color:#31765b}.nav-link:after,.accent-line{background:linear-gradient(90deg,#3ba75e 0%,#3ba75e 25%,#3a99c3 25%,#3a99c3 50%,#dcaf2f 50%,#dcaf2f 75%,#bb4f41 75%)}
.btn-gold{background:#307c5c;border-color:#307c5c;color:#fff}.btn-gold:hover{background:#215c43;border-color:#215c43;color:#fff}.btn-navy{background:#202425;border-color:#202425}.btn-navy:hover{background:#353b3c;border-color:#353b3c}
.hero{background:#202725}.hero::before{background-image:linear-gradient(90deg,rgba(6,13,12,.94),rgba(9,21,18,.85) 36%,rgba(12,23,20,.60) 65%,rgba(9,13,12,.18) 100%),var(--hero-image)!important;background-position:center!important;background-size:cover!important}.hero h1 em,.hero .eyebrow-light{color:#b7dec3}.hero .btn-gold{background:#3e9b6c;border-color:#3e9b6c;color:white}.hero .btn-gold:hover{background:#54b582}
.page-hero{background:radial-gradient(circle at 88% 25%,#315747 0,transparent 44%),linear-gradient(115deg,#192022,#283b33)}.site-footer{background:#1a2020;color:#e1eae5}.site-footer a{color:#e1eae5}.footer-bottom{border-color:#4d5e58}.closing{background:#182420}.picture-stamp{background:#1b2822}.picture-stamp small{color:#a2deb3}
.brand{flex:0 0 206px;width:206px}.brand img{display:block;width:100%;height:76px;max-height:76px;object-fit:contain;object-position:left center}.mobile-head img{width:180px;max-height:96px;object-fit:contain}.footer-logo img{display:block;width:228px;max-width:100%;height:auto;object-fit:contain;object-position:left center}
.intro-picture>img,.profile-photo img{display:block;width:100%!important;height:auto!important;aspect-ratio:4/5!important;object-fit:cover!important;object-position:center top!important}
.insight-image{display:block;aspect-ratio:1.5/1;overflow:hidden}.insight-image img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}.detail-photo{overflow:hidden;min-height:315px}.detail-photo img,.decorative-photo img,.practice-card>img{display:block;width:100%!important;height:100%!important;object-fit:cover!important}
.map-frame{overflow:hidden;border:1px solid #dde6de;box-shadow:0 12px 42px #162b2420}.map-frame iframe{width:100%;height:420px;display:block;border:0}.office-panel{padding:22px;background:#f2f8f4;border-left:4px solid #307c5c;margin-top:24px}
.floating-whatsapp{position:fixed!important;bottom:20px!important;right:20px!important;border-radius:50%!important;width:56px!important;height:56px!important;display:grid!important;place-items:center!important;background:#19b767!important;color:#fff!important;z-index:100!important;box-shadow:0 10px 25px #0004!important}.floating-whatsapp svg{width:28px!important;height:28px!important;color:white!important;fill:white!important}.whatsapp-tooltip{right:72px}
.contact-details a,.footer-grid a{overflow-wrap:anywhere}
@media(max-width:1100px){.brand{flex:0 0 185px;width:185px}}
@media(max-width:767px){.brand{flex:0 0 170px;width:170px}.brand img{height:68px;max-height:68px}.map-frame iframe{height:320px}.hero::before{background-image:linear-gradient(90deg,rgba(6,13,12,.95),rgba(9,18,14,.68)),var(--hero-image)!important;background-position:58% center!important}}
@media(max-width:380px){.brand{flex:0 0 153px;width:153px}.brand img{height:64px;max-height:64px}}

/* Komape branding — navy blue, slate and silver from the supplied logo. */
:root{--navy:#1e2e48;--navy-deep:#111e32;--navy-soft:#334763;--gold:#9cadbf;--gold-light:#dce6ef;--red:#6d87a4;--ink:#1b2a40;--body:#526276;--line:#e1e7ed;--cream:#f3f6f9;--shadow:0 24px 60px rgba(21,39,65,.14)}
.topbar{background:#1d2e48}.nav-link.active,.text-link,.eyebrow,.card-number{color:#416389}.nav-link:after,.accent-line{background:#91a6bc}
.btn-gold,.hero .btn-gold{background:#2a4566!important;border-color:#2a4566!important;color:#fff!important}.btn-gold:hover,.hero .btn-gold:hover{background:#405f83!important;border-color:#405f83!important}.btn-navy{background:#182941;border-color:#182941}
.hero{background:#14273e}.hero::before{background-image:linear-gradient(90deg,rgba(8,22,40,.95),rgba(13,29,50,.85) 38%,rgba(17,32,50,.50) 67%,rgba(13,24,38,.18)),var(--hero-image)!important;background-position:center!important;background-size:cover!important}.hero h1 em,.hero .eyebrow-light{color:#d0e2f5}.page-hero{background:radial-gradient(circle at 87% 26%,#3d5979 0,transparent 50%),linear-gradient(115deg,#172b45,#304a67)}
.site-footer{background:#13263e;color:#dce8f5}.site-footer a{color:#dce8f5}.footer-bottom{border-color:#425d7c}.closing,.picture-stamp{background:#1e3852}.picture-stamp small{color:#c4d6e8}.office-panel{background:#f0f5f9;border-left:4px solid #6785a6}.map-frame{border:1px solid #d2e0ea}
.brand{flex:0 0 188px;width:188px}.brand img{display:block;width:100%;height:74px;object-fit:contain;object-position:left center}.mobile-head img{width:180px;max-height:88px;object-fit:contain}.footer-logo img{width:224px;max-width:100%;height:auto;object-fit:contain}
.intro-picture>img,.profile-photo img{width:100%!important;height:auto!important;aspect-ratio:4/5!important;object-fit:cover!important;object-position:center 15%!important}
.insight-image{display:block;aspect-ratio:1.5/1;overflow:hidden}.insight-image img,.practice-card>img,.detail-photo img,.decorative-photo img{display:block;width:100%!important;height:100%!important;object-fit:cover!important}
.floating-whatsapp{position:fixed!important;right:18px!important;bottom:19px!important;width:56px!important;height:56px!important;border-radius:50%!important;padding:0!important;background:#19b767!important;display:grid!important;place-items:center!important;z-index:100!important}.floating-whatsapp svg{width:28px!important;height:28px!important}
.contact-details a,.footer-grid a{overflow-wrap:anywhere}
@media(max-width:767px){.brand{flex:0 0 158px;width:158px}.brand img{height:66px}.hero::before{background-image:linear-gradient(90deg,rgba(10,23,39,.94),rgba(10,23,39,.74)),var(--hero-image)!important;background-position:58% center!important}.map-frame iframe{height:310px}.practice-grid,.insight-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:380px){.brand{flex:0 0 145px;width:145px}}

/* Horizontal mark in header, tall original logo in footer. */
.brand img{width:100%;height:74px;max-height:74px;object-fit:contain;object-position:left center}
.mobile-head img{height:auto;max-height:72px;max-width:195px;object-fit:contain}
@media(max-width:950px){.nav-links,.nav-cta{display:none!important}.menu-open{display:inline-flex!important;align-items:center;justify-content:center}.nav-inner{display:flex;align-items:center;justify-content:space-between}}
@media(max-width:767px){.intro-grid,.two-column,.detail-grid,.contact-layout{grid-template-columns:minmax(0,1fr)}.practice-grid,.insight-grid{grid-template-columns:minmax(0,1fr)}.hero h1{overflow-wrap:break-word}.hero-actions .btn{max-width:100%}}


/* Client-provided photography gallery: additive only, consistent with existing site UI. */
.firm-gallery-section .section-heading{max-width:730px}
.firm-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.firm-photo{min-width:0;display:block;background:#fff;border:1px solid var(--line);color:var(--ink);transition:box-shadow .22s ease,transform .22s ease}
.firm-photo:hover{box-shadow:0 18px 36px rgba(23,33,48,.13);transform:translateY(-3px)}
.firm-photo-media{display:block;aspect-ratio:4/5;overflow:hidden;background:#e9ebee}
.firm-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 38%;transition:transform .35s ease}
.firm-photo:hover img{transform:scale(1.035)}
.firm-photo-caption{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:14px 16px;font:700 13px/1.45 Manrope,Arial,sans-serif}
.firm-photo-expand{font-size:19px;color:var(--gold);flex:none}
@media (max-width:900px){.firm-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media (max-width:480px){.firm-photo-grid{gap:10px}.firm-photo-caption{padding:10px 11px;font-size:11px}.firm-photo-media{aspect-ratio:3/4}.firm-gallery-section .section-heading{margin-bottom:28px}}
@media (prefers-reduced-motion:reduce){.firm-photo,.firm-photo img{transition:none}}
