:root{color-scheme:dark;--profile-ink:#171b1b;--profile-deep:#111515;--profile-paper:#f1ede4;--profile-gold:#d5b384;--profile-muted:#b8bdb7;--profile-line:#f1ede430;--profile-serif:"Cormorant Garamond", Georgia, serif;--profile-sans:"Manrope", sans-serif;--profile-width:min(1280px, calc(100% - 96px))}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--profile-ink)}body{color:var(--profile-paper);font:400 15px/1.8 var(--profile-sans);margin:0}.professional-page--leonardo main,.professional-page--leonardo footer{z-index:1;position:relative}.professional-page{--ink:var(--profile-ink);--graphite:#20282e;--paper:var(--profile-paper);--accent:var(--profile-gold);--accent-strong:#8f7150;--line:var(--profile-line);--sans:var(--profile-sans);--serif:var(--profile-serif);--muted:var(--profile-muted);--silver:#c8cbc5;--page:var(--profile-width)}.professional-page .section-heading--split,.professional-page .method-layout,.professional-page .method-steps,.professional-page .method-step{min-width:0}.professional-page .method-step h3{overflow-wrap:break-word;max-width:100%}.professional-page .method-drawing{flex-shrink:1;width:100%;height:calc(100% - 30px)}.professional-page .service-card{min-width:0;overflow:hidden}.professional-page .service-card__scope{overflow-wrap:anywhere;margin:0;padding:24px 30px 30px}.professional-page .eyebrow{color:var(--accent);letter-spacing:.2em;text-transform:uppercase;font-size:.68rem;font-weight:500;line-height:1.5}.professional-page .section-intro{color:var(--silver);font-size:1rem}.professional-page .section-heading h2{letter-spacing:-.035em;max-width:20ch;font-size:clamp(2.8rem,4.3vw,4.8rem);line-height:1.04}.professional-page .section-heading h2 em,.professional-page .recurring h2 em{color:var(--accent);font-style:italic}.professional-page .section-heading:not(.section-heading--split)>.section-intro{margin-top:28px}.professional-page .section-heading--split>.section-intro{max-width:30ch;margin:0 0 4px}.professional-page .technology__method ol{margin:0;padding:0;list-style:none}.professional-page .service-card summary{font:inherit}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--profile-serif);text-wrap:balance;font-weight:400}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}svg{flex-shrink:0;width:22px}::selection{background:var(--profile-gold);color:var(--profile-deep)}:focus-visible{outline-offset:6px;outline:2px solid}[id]{scroll-margin-top:125px}.profile-container{width:var(--profile-width);margin-inline:auto}.profile-eyebrow{color:var(--profile-gold);letter-spacing:.17em;text-transform:uppercase;font-size:10px;font-weight:500}.profile-skip{z-index:100;background:var(--profile-paper);color:var(--profile-ink);padding:12px 20px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.profile-skip:focus{transform:none}.profile-header{z-index:10;border-bottom:1px solid var(--profile-line);background:#171b1bf5;justify-content:space-between;align-items:center;gap:32px;min-height:102px;padding:18px max(48px,50% - 640px);display:flex;position:sticky;top:0}.profile-brand{align-items:center;gap:17px;display:flex}.profile-brand img{object-fit:contain;width:58px;height:58px}.profile-brand>span{font-family:var(--profile-serif);font-size:25px;line-height:1.2}.profile-brand small{color:var(--profile-gold);font:8px/1.5 var(--profile-sans);letter-spacing:.23em;text-transform:uppercase;margin-top:7px;display:block}.profile-header nav{align-items:center;gap:34px;font-size:12px;display:flex}.profile-header nav a{align-items:center;gap:16px;min-height:44px;display:inline-flex}.profile-header nav a:hover{color:var(--profile-gold)}.profile-header nav a:last-child{border-left:1px solid var(--profile-line);padding-left:28px}.profile-hero{width:var(--profile-width);grid-template-columns:1.15fr 1fr;align-items:center;gap:0 64px;margin-inline:auto;padding-top:54px;display:grid}.profile-hero__copy{padding:24px 0 38px;animation:.9s both profile-enter}.profile-hero h1{letter-spacing:-.035em;max-width:10ch;margin-top:22px;font-size:clamp(76px,7.1vw,108px);line-height:.92}.profile-registration{color:var(--profile-gold);letter-spacing:.11em;margin-top:22px;font-size:11px}.profile-hero__headline{max-width:24ch;font-family:var(--profile-serif);margin-top:35px;font-size:clamp(28px,2.7vw,38px);line-height:1.14}.profile-hero__intro{max-width:47ch;color:var(--profile-muted);margin:22px 0 30px;font-size:14px}.profile-button{background:var(--profile-gold);min-height:58px;color:var(--profile-deep);justify-content:space-between;align-items:center;gap:28px;padding:17px 24px;font-size:12px;font-weight:500;transition:background .18s;display:inline-flex}.profile-button:hover{background:#ead0ab}.profile-text-link{width:fit-content;min-height:48px;color:var(--profile-muted);align-items:center;gap:28px;margin-top:10px;font-size:11px;display:flex}.profile-text-link:hover{color:var(--profile-paper)}.profile-hero__links{flex-wrap:wrap;gap:0 28px;display:flex}.profile-portrait{align-self:stretch;padding:0 0 40px;animation:1.1s .1s both profile-enter;position:relative}.profile-portrait:before{content:"";border-top:1px solid var(--profile-gold);border-right:1px solid var(--profile-gold);opacity:.55;pointer-events:none;position:absolute;inset:-12px -12px 53% 45%}.profile-portrait>img{aspect-ratio:4/5;object-fit:cover;object-position:center 40%;width:100%;height:calc(100% - 36px)}.professional-page--leonardo .profile-portrait{flex-direction:column;justify-content:center;display:flex}.professional-page--leonardo .profile-portrait>img{aspect-ratio:1;object-position:center;height:auto}.profile-portrait figcaption{color:var(--profile-muted);letter-spacing:.05em;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;padding-top:14px;font-size:9px;display:flex}.profile-portrait figcaption span:last-child{color:var(--profile-gold)}.profile-hero__baseline{border-top:1px solid var(--profile-line);grid-column:1/-1;align-items:center;gap:40px;padding:28px 0;display:flex}.profile-hero__baseline>span{color:var(--profile-muted);letter-spacing:.15em;text-transform:uppercase;font-size:9px}.profile-hero__baseline p{font-family:var(--profile-serif);font-size:25px}.profile-hero__baseline a{min-width:44px;min-height:44px;color:var(--profile-gold);place-items:center;margin-left:auto;display:grid}.profile-practice{background:var(--profile-paper);color:var(--profile-ink);padding:98px 0 70px}.profile-practice .profile-eyebrow{color:#766044}.profile-section-heading{grid-template-columns:1fr 1fr;gap:24px 80px;margin-bottom:62px;display:grid}.profile-section-heading>.profile-eyebrow{grid-column:1/-1}.profile-section-heading h2,.profile-about h2,.profile-process h2{letter-spacing:-.025em;font-size:clamp(42px,4.4vw,64px);line-height:1.05}.profile-section-heading>p:last-child{color:#515b55;align-self:end;max-width:42ch;padding-bottom:5px}.profile-area{border-top:1px solid #171b1b38;grid-template-columns:40px .85fr 1fr 32px;align-items:start;gap:28px;padding:36px 0;display:grid}.profile-area__number{color:#766044;padding-top:7px;font-size:10px}.profile-area h3{max-width:15ch;font-size:34px;line-height:1.05}.profile-area>div>p{color:#515b55;max-width:49ch;font-size:14px}.profile-area ul{flex-wrap:wrap;gap:8px 20px;margin:20px 0 0;padding:0;list-style:none;display:flex}.profile-area li{color:#5d594e;border-bottom:1px solid #171b1b30;padding-bottom:4px;font-size:10px}.profile-area>svg{color:#806545;width:28px}.profile-about{grid-template-columns:1fr 1.15fr;align-items:center;gap:100px;padding-block:110px;display:grid}.profile-about__brand{text-align:center}.profile-about__brand img{width:180px;margin-inline:auto}.profile-about__brand>p{color:var(--profile-muted);font-family:var(--profile-serif);margin:20px auto 0;font-size:22px;line-height:1.3}.profile-about__brand .profile-about__brand-name{color:var(--profile-paper);font-size:31px}.profile-about__brand-name small{color:var(--profile-gold);font:8px/1.5 var(--profile-sans);letter-spacing:.23em;text-transform:uppercase;margin-top:6px;display:block}.profile-about h2{margin-top:26px}.profile-about__copy>p:not(.profile-eyebrow){max-width:50ch;color:var(--profile-muted);margin-top:28px}.profile-about__signature{border-top:1px solid var(--profile-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;margin-top:32px;padding-top:22px;display:flex}.profile-about__signature span:first-child{font-family:var(--profile-serif);font-size:26px}.profile-about__signature span:last-child{color:var(--profile-gold);letter-spacing:.06em;font-size:10px}.profile-process{background:var(--profile-deep);border-block:1px solid var(--profile-line);padding-block:85px 90px}.profile-process__heading{grid-template-columns:.8fr 1.2fr;align-items:start;gap:40px;display:grid}.profile-process__heading .profile-eyebrow{padding-top:8px}.profile-process__intro{max-width:40ch;color:var(--profile-muted);margin-top:20px;font-size:13px}.profile-process__steps{grid-template-columns:repeat(3,1fr);gap:40px;margin:56px 0 0;padding:0;list-style:none;display:grid}.profile-process__steps li{border-top:1px solid var(--profile-line);padding-top:24px}.profile-process__steps span{color:var(--profile-gold);font-size:11px}.profile-process__steps h3{max-width:16ch;margin:20px 0 16px;font-size:31px;line-height:1.1}.profile-process__steps p{max-width:38ch;color:var(--profile-muted);font-size:13px}.profile-contact{background:radial-gradient(ellipse at 0 0, #b38e5b21, transparent 65%), var(--profile-ink);padding-top:90px}.profile-contact__main{grid-template-columns:1.2fr 1fr;align-items:center;gap:80px;padding-bottom:80px;display:grid}.profile-contact h2{letter-spacing:-.025em;max-width:19ch;margin-top:24px;font-size:clamp(46px,4.6vw,66px);line-height:1.04}.profile-contact__main>div>p:last-child{max-width:44ch;color:var(--profile-muted);margin-top:24px;font-size:14px}.profile-contact address{flex-direction:column;align-items:flex-start;gap:12px;font-style:normal;display:flex}.profile-contact address>span{color:var(--profile-muted);font-size:11px}.profile-contact address .profile-button{margin-bottom:8px}.profile-other-professionals{border-top:1px solid var(--profile-line);grid-template-columns:.65fr 1.35fr;gap:60px;padding:58px 0 72px;display:grid}.profile-other-professionals h2{margin-top:12px;font-size:42px}.profile-other-professionals nav{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.profile-other-professionals nav a{border:1px solid var(--profile-line);grid-template-columns:1fr auto;gap:8px 18px;min-height:112px;padding:22px;transition:border-color .18s,background .18s;display:grid}.profile-other-professionals nav a:hover{border-color:var(--profile-gold);background:#d5b3840d}.profile-other-professionals nav a>span:first-child{font-family:var(--profile-serif);font-size:25px;line-height:1.15}.profile-other-professionals nav a>span:last-child{color:var(--profile-gold)}.profile-other-professionals nav small{color:var(--profile-muted);letter-spacing:.06em;grid-column:1/-1;font-size:9px;font-weight:400}.profile-contact__bottom{border-top:1px solid var(--profile-line);grid-template-columns:1fr 1.3fr auto;align-items:center;gap:36px;padding:32px 0;display:grid}.profile-contact__bottom p:first-child{font-family:var(--profile-serif);font-size:23px}.profile-contact__bottom small{color:var(--profile-gold);font:8px/1.8 var(--profile-sans);letter-spacing:.15em;text-transform:uppercase;display:block}.profile-contact__bottom p:nth-child(2){max-width:55ch;color:var(--profile-muted);font-size:10px}.profile-contact__bottom a{align-items:center;min-height:44px;font-size:10px;display:inline-flex}@keyframes profile-enter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@media (width>=1600px){.profile-hero{gap:0 90px}}@media (width<=1050px){:root{--profile-width:calc(100% - 64px)}.profile-header{padding-inline:32px}.profile-hero{gap:0 36px}.profile-hero h1{font-size:78px}.profile-hero__headline{font-size:30px}.profile-about{gap:50px}.profile-area{grid-template-columns:26px .8fr 1fr;gap:20px}.profile-area>svg{display:none}.profile-contact__main{gap:40px}}@media (width<=760px){:root{--profile-width:calc(100% - 48px)}[id]{scroll-margin-top:145px}.profile-header{flex-wrap:wrap;gap:10px;padding:13px 24px 9px}.profile-brand{gap:12px}.profile-brand img{width:48px;height:48px}.profile-brand>span{font-size:22px}.profile-brand small{margin-top:4px;font-size:7px}.profile-header nav{border-top:1px solid var(--profile-line);justify-content:space-between;gap:16px;width:100%;font-size:11px}.profile-header nav a:last-child{border:0;padding-left:0}.profile-header nav svg{width:16px}.profile-hero{grid-template-columns:1fr;padding-top:34px}.profile-hero__copy{padding:10px 0 32px}.profile-hero h1{max-width:10ch;margin-top:23px;font-size:clamp(64px,15.5vw,90px)}.profile-registration{margin-top:19px}.profile-hero__headline{max-width:25ch;margin-top:28px;font-size:33px}.profile-hero__intro{font-size:14px}.profile-button{gap:16px;width:100%;padding-inline:20px}.profile-text-link{margin-top:12px}.profile-portrait{padding-bottom:26px}.profile-portrait>img{aspect-ratio:4/5;height:auto}.profile-portrait:before{inset:-8px -8px 53% 45%}.profile-hero__baseline{flex-wrap:wrap;gap:4px 12px;padding-block:20px}.profile-hero__baseline>span{width:100%}.profile-hero__baseline p{font-size:clamp(18px,5vw,25px)}.profile-hero__baseline a{min-width:24px}.profile-practice{padding-block:64px 30px}.profile-section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:36px}.profile-section-heading h2,.profile-about h2,.profile-process h2{font-size:45px}.profile-section-heading>p:last-child{font-size:14px}.profile-area{grid-template-columns:24px 1fr;gap:18px 16px;padding-block:30px}.profile-area h3{max-width:17ch;font-size:33px}.profile-area>div{grid-column:2}.profile-area ul{gap:8px 16px}.profile-about{grid-template-columns:1fr;gap:36px;padding-block:64px}.profile-about__brand{order:2}.profile-about__brand img{max-width:310px}.profile-about__brand>p{font-size:21px}.profile-about__copy>p:not(.profile-eyebrow){font-size:14px}.profile-process{padding-block:64px}.profile-process__heading{grid-template-columns:1fr;gap:24px}.profile-process__steps{grid-template-columns:1fr;gap:28px;margin-top:36px}.profile-process__steps h3{max-width:none;margin-top:12px}.profile-process__steps p{max-width:48ch}.profile-contact{padding-top:64px}.profile-contact__main{grid-template-columns:1fr;gap:32px;padding-bottom:48px}.profile-contact h2{font-size:47px}.profile-contact address{align-items:stretch}.profile-other-professionals{grid-template-columns:1fr;gap:28px;padding-block:44px}.profile-other-professionals nav{grid-template-columns:1fr}.profile-contact__bottom{grid-template-columns:1fr;gap:18px;padding-block:28px}}@media (width<=600px){.professional-page .section-heading h2{font-size:2.9rem}.professional-page .service-card__scope{padding:24px 26px 26px}}@media (width<=420px){.profile-header nav{gap:8px;font-size:9px}.profile-header nav a{gap:7px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.meteor-background[data-astro-cid-ny55skv5]{z-index:0;pointer-events:none;user-select:none;contain:strict;position:fixed;inset:0;overflow:hidden;mask-image:linear-gradient(90deg,#000,#00000073 40% 60%,#000)}.meteor-background__path[data-astro-cid-ny55skv5]{left:var(--x);top:var(--y);width:var(--length);transform-origin:0;height:1px;position:absolute;transform:rotate(28deg)}.meteor-background__streak[data-astro-cid-ny55skv5]{background:linear-gradient(90deg, transparent, var(--accent-strong) 55%, var(--accent));opacity:0;width:100%;height:100%;animation:meteor-flight var(--duration) var(--delay) linear infinite;border-radius:50%;display:block;position:relative}.meteor-background__streak[data-astro-cid-ny55skv5]:after{content:"";background:var(--accent);border-radius:50%;width:2px;height:2px;position:absolute;top:-.5px;right:0;box-shadow:0 0 7px 1px #a7c4e24d}@keyframes meteor-flight{0%{opacity:0;transform:translate(0,0)}4%{opacity:.72}19%{opacity:.48}28%,to{opacity:0;transform:translate(clamp(440px,65vw,1100px))}}@media (width<=600px){.meteor-background[data-astro-cid-ny55skv5]{opacity:.7}.meteor-background__path[data-astro-cid-ny55skv5]{width:calc(var(--length) * .65)}.meteor-background__path[data-astro-cid-ny55skv5]:nth-child(n+13){display:none}}@media (prefers-reduced-motion:reduce){.meteor-background[data-astro-cid-ny55skv5]{display:none}.meteor-background__streak[data-astro-cid-ny55skv5]{animation:none}}
