/* Values measured from the reference: card colors, 30px hover layer, .35/.65s transitions. */
:root{--gold:#bba984;--green:#3b5542;--rust:#914124}
.reference-hero{margin-bottom:0}
.reference-rail{left:6.1%;top:62px;bottom:24px;border-color:#bba984}
.reference-copy{padding-left:5%}
.solutions{position:relative;margin-left:6.1%;padding:65px 4% 110px 28px;border-left:1px solid #bba984}
.intro-row{position:relative;padding-bottom:34px;margin-bottom:42px}
.intro-row:after{content:"";position:absolute;left:-28px;right:0;bottom:0;height:1px;background:#bba984;transform:scaleX(0);transform-origin:left;transition:transform 2s ease}
.intro-row.detail-visible:after{transform:scaleX(1)}
.service-grid{gap:4%;align-items:stretch}
.service-shell{position:relative;isolation:isolate;min-width:0;margin-top:30px}
.service-shell:before{content:"";position:absolute;inset:0;background-position:center;background-size:cover;opacity:0;transform:translate(0,0);transition:transform .35s ease-in-out,opacity .35s ease-in-out;z-index:-1}
.service-shell:nth-child(1):before{background-image:url('/assets/cartographic-paper.webp')}
.service-shell:nth-child(2):before{background-image:url('/assets/sculpture-study.webp')}
.service-shell:nth-child(3):before{background-image:url('/assets/orbit-pattern.svg');background-color:#c9c3a5}
.service-shell:hover:before,.service-shell:focus-within:before{opacity:1;transform:translate(30px,30px)}
.service-card{display:flex;height:100%;min-height:482px;padding:36px 23px 48px;overflow:hidden;border:0;transition:opacity .65s ease-in-out!important;filter:none!important}
.service-card:before,.service-card:after{display:none!important}
.service-card.family{background:#3b5542}
.service-card.investment{background:#914124}
.service-card.banking{background:#2a565b}
.service-card h3{font-weight:400;border:0;font-size:40px;min-height:0;margin-bottom:15px;line-height:1.2}
.service-card h3 small{font-size:22px;font-weight:400;line-height:1.25}
.card-hairline{height:1px;background:#bba984;width:100%;transform:scaleX(0);transform-origin:left;transition:transform 1.6s ease .25s}
.service-shell.detail-visible .card-hairline{transform:scaleX(1)}
.service-card p{margin-top:13px;font-size:17px;line-height:1.6;margin-bottom:35px}
.service-card .text-link{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;line-height:1.5;font-size:10px;letter-spacing:1px;border:0;padding:0}
.service-card .text-link>span:last-child{display:block;flex:0 0 24px;transform:translateX(-10px);transition:transform .35s ease-in-out}
.service-shell:hover .text-link>span:last-child,.service-shell:focus-within .text-link>span:last-child{transform:translateX(0)}
.ornate-button{border:1px solid currentColor;transition:color .35s ease-in-out,background-color .35s ease-in-out;position:relative}
.ornate-button:before,.ornate-button:after{content:"";border:0!important;border-radius:0!important;top:0;bottom:0;width:22px;transform:none;background:currentColor;mask:url('/assets/button-bracket.svg') center/100% 100% no-repeat}
.ornate-button:before{left:-23px}
.ornate-button:after{right:-23px;transform:scaleX(-1)}
.ornate-button:hover,.ornate-button:focus-visible{background:#806a4d;color:#f3f1ec}
.reference-signature{left:-45%;bottom:-48px;width:440px;max-width:90%;height:auto;line-height:0;pointer-events:none;transition:clip-path 1.75s ease-in-out 1.5s,opacity .75s ease-in-out 1.5s;clip-path:inset(0);opacity:1}
.reference-signature img{width:100%;height:auto;display:block;object-fit:contain}
.reference-hero:not(.intro-done) .reference-signature{clip-path:inset(0 100% 0 0);opacity:0}
.reference-pictures .heritage{overflow:hidden}
.reference-pictures .heritage img{transition:transform 1.75s ease-in-out .25s}
.reference-hero:not(.intro-done) .heritage img{transform:translateX(-100%)}
.reference-pictures .future{transition:transform 1.75s ease-in-out .5s,opacity 1.75s ease-in-out .5s}
.reference-hero:not(.intro-done) .future{transform:translateX(35px);opacity:0}
.reveal-char{transform:none!important;transition:opacity .65s ease-in-out!important}
.company{overflow:hidden}
.company-photo{overflow:visible}
.company-photo>img{clip-path:inset(0 0 100% 0);transition:clip-path .65s ease-in-out .25s}
.company-collage.is-visible .company-photo>img{clip-path:inset(0)}
.company-panel{position:relative;transition:transform .65s ease-in-out,opacity .65s ease-in-out}
.company-panel:before{transform-origin:top}
.company-values .text-link span:last-child{transition:transform .35s ease-in-out}
.company-values .text-link:hover span:last-child{transform:translateX(10px)}
.service-card:focus-visible,.ornate-button:focus-visible{outline:2px solid #bba984;outline-offset:5px}
@media(max-width:1000px){.service-grid{grid-template-columns:1fr}.service-card{min-height:340px}.reference-signature{width:360px}}
@media(max-width:760px){.solutions{margin-left:20px;padding:50px 30px 65px 20px}.intro-row:after{left:-20px}.reference-copy{padding-left:0}.reference-rail{left:20px}.reference-signature{left:-10px;width:300px;bottom:-35px}.service-shell{margin-top:0;margin-bottom:16px}.service-shell:hover:before,.service-shell:focus-within:before{transform:translate(16px,16px)}.reference-links{gap:24px}.ornate-button:before,.ornate-button:after{width:16px}.ornate-button:before{left:-17px}.ornate-button:after{right:-17px}}
@media(prefers-reduced-motion:reduce){.intro-row:after,.card-hairline{transform:none}.reference-signature{clip-path:none;opacity:1}.company-photo>img{clip-path:none}.service-shell:before,.reference-signature,.reference-pictures *{transition:none!important}}
