:root{--ink:#29235c;--deep:#211b4d;--muted:#666576;--line:#e2e1e9;--pale:#f4f4f8;--white:#fff;--accent:#aab6d6;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--white);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #7467be;outline-offset:6px}::selection{background:var(--ink);color:white}.skip{position:fixed;top:-100px;left:15px;background:var(--ink);color:white;padding:15px;z-index:10}.skip:focus{top:15px}.header{height:110px;max-width:1440px;padding:0 6%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;flex-direction:column;align-items:flex-start}.wordmark{font-size:46px;font-family:Georgia,'Times New Roman',serif;letter-spacing:2px;line-height:1}.brand-dot{color:#7b7797}.brand-sub{font-size:10px;letter-spacing:2.8px;margin-top:7px}.header nav{display:flex;align-items:center;gap:40px;font-size:14px}.header nav>a:not(.nav-contact):hover{text-decoration:underline;text-underline-offset:6px}.nav-contact{border:1px solid var(--ink);padding:14px 19px;display:flex;gap:24px;align-items:center}.nav-contact:hover{background:var(--pale)}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1.08fr;min-height:642px;padding:22px 3% 0 6%;gap:3%}.hero-copy{padding:34px 0 35px}.eyebrow{font-size:11px;letter-spacing:2.3px;font-weight:600;line-height:1.8;margin:0 0 25px}.hero .eyebrow{display:flex;align-items:center;gap:12px}.eyebrow>span{width:23px;height:1px;background:var(--ink);display:inline-block}h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(48px,4.6vw,72px);letter-spacing:-2.8px;line-height:1.08;margin:0 0 28px}h1 em{font-weight:400;color:#79718e}.hero-description{font-size:16px;line-height:1.8;max-width:415px;color:var(--muted);margin:0 0 28px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:18px 23px;font-size:14px;line-height:1.5;transition:background .15s,transform .15s}.button:hover{transform:translateY(-2px)}.button>span{font-size:20px;line-height:1}.primary{background:var(--ink);color:white}.primary:hover{background:#403674}.hero-caption{display:flex;gap:12px;align-items:center;font-size:12px;margin-top:36px;color:var(--muted)}.caption-line{width:26px;height:1px;background:#a7a3b9}.hero-visual{position:relative;margin:0;min-height:620px;isolation:isolate;background:#e5e8e1;overflow:hidden}.hero-visual>img{height:100%;width:100%;position:absolute;inset:0;object-fit:cover;object-position:62% center}.hero-visual:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(18,26,24,.55));z-index:0}.hero-visual figcaption{position:absolute;bottom:27px;left:30px;right:30px;color:white;z-index:1;display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.hero-visual figcaption>span{font-family:Georgia,serif;font-size:22px;max-width:200px;line-height:1.3}.hero-visual figcaption small{font-size:10px;opacity:.85}.image-label{position:absolute;right:0;top:35px;background:var(--ink);color:white;width:150px;height:160px;display:flex;flex-direction:column;justify-content:space-between;padding:22px;z-index:2}.image-label>span:first-child{font-family:Georgia,serif;font-size:28px;letter-spacing:2px}.image-label>span:last-child{font-size:13px;line-height:1.5}.values-strip{max-width:1268px;margin:0 auto;padding:35px 6%;display:flex;justify-content:space-around;gap:20px;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}.values-strip>span+span:before{content:'+';color:#8a84a4;margin-right:58px}.section{max-width:1268px;margin:auto;padding:100px 0}.services{display:grid;grid-template-columns:1fr 1.4fr;gap:100px}h2{font-family:Georgia,'Times New Roman',serif;font-size:43px;line-height:1.16;font-weight:400;letter-spacing:-1.25px;margin:0 0 24px}.section-heading>p:last-child{font-size:16px;line-height:1.8;max-width:320px;color:var(--muted)}.service{display:grid;grid-template-columns:28px 1fr 24px;gap:25px;padding:27px 0;border-top:1px solid var(--line)}.service:first-child{padding-top:0;border-top:0}.service-number{font-size:12px;padding-top:6px;color:#8b859f}.service h3{font-size:21px;font-weight:400;margin:0 0 12px;letter-spacing:-.4px}.service p{font-size:15px;line-height:1.8;margin:0;color:var(--muted)}.service-symbol{font-size:22px;color:#8b859f}.about{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about-brand{background:var(--pale);min-height:440px;padding:34px 40px;display:flex;flex-direction:column;align-items:center;justify-content:space-between}.about-place{font-size:10px;letter-spacing:2px;line-height:1.7;text-align:center}.big-r{font-family:Georgia,serif;font-size:215px;line-height:1;letter-spacing:-18px;transform:translateX(-7px)}.about-brand-bottom{text-align:center;font-family:Georgia,serif;font-size:23px;line-height:1.45}.about-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--muted)}.person{border-top:1px solid var(--line);display:flex;align-items:center;gap:15px;margin-top:28px;padding-top:24px}.person-monogram{background:var(--ink);color:#fff;width:49px;height:49px;display:grid;place-items:center;font-family:Georgia,serif;font-size:20px}.person strong{display:block;font-size:16px;font-weight:500;margin-bottom:6px}.person div>span{font-size:13px;color:var(--muted)}.contact{background:var(--ink);color:white;max-width:none;padding:75px max(6%,calc((100% - 1268px)/2));display:grid;grid-template-columns:1.7fr 1fr;gap:70px}.contact .eyebrow{color:#c5c1dd}.contact h2{font-size:48px}.contact p{font-size:16px;line-height:1.8;color:#d7d5e5}.light{background:#fff;color:var(--ink);margin-top:10px}.light:hover{background:#eae7f5}.contact-details{padding:20px 0 0 45px;border-left:1px solid #5c567f;align-self:center}.contact-label{font-size:11px;letter-spacing:2px;color:#c5c1dd}.contact-details address{font-size:16px;font-style:normal;line-height:1.8;color:#d7d5e5}.contact-details .region{font-size:13px;margin-top:30px}footer{padding:31px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px;color:var(--muted);font-size:12px}.footer-brand{font-family:Georgia,serif;color:var(--ink);font-size:25px;letter-spacing:1px}.footer-brand small{font-family:Arial,sans-serif;font-size:9px;letter-spacing:1.5px;margin-left:10px}.footer-brand span{color:#817897}footer>a:last-child{font-size:12px}footer>a:last-child:hover{text-decoration:underline}@media(min-width:1441px){.hero{padding-left:86px;padding-right:43px}.header{padding-left:86px;padding-right:86px}}@media(max-width:1390px){.section:not(.contact){margin-left:6%;margin-right:6%}.services{gap:65px}.about{gap:65px}}@media(max-width:1000px){.header{height:96px}.hero{min-height:580px;gap:4%;padding-top:5px}.hero-copy{padding-top:25px}.hero .eyebrow{font-size:9px;letter-spacing:1.4px}h1{font-size:55px}.hero-visual{min-height:580px}.hero-description{font-size:15px}.image-label{width:120px;height:135px;padding:17px}.values-strip>span+span:before{margin-right:20px}.services{grid-template-columns:1fr 1.2fr;gap:40px}h2{font-size:36px}.section{padding-top:70px;padding-bottom:70px}.service{gap:15px}.about{gap:40px}.about-brand{padding:30px 24px}.about-place{font-size:9px}.contact{gap:40px}.contact h2{font-size:40px}.contact-details{padding-left:28px}}@media(max-width:720px){html{scroll-padding-top:20px}.header{height:94px;padding:0 6%;gap:10px}.wordmark{font-size:36px}.brand-sub{font-size:8px;letter-spacing:1.8px}.header nav{gap:16px;font-size:12px}.header nav>a:first-child{display:none}.nav-contact{border:0;padding:10px 0;gap:8px}.hero{grid-template-columns:1fr;padding:16px 6% 0;gap:24px}.hero-copy{padding:0}.hero .eyebrow{font-size:10px;margin-bottom:22px}h1{font-size:clamp(49px,10.7vw,70px);letter-spacing:-2px}.hero-description{font-size:16px;max-width:490px}.hero-caption{margin-top:24px}.hero-visual{min-height:400px}.hero-visual>img{object-position:65% center}.image-label{top:20px}.hero-visual figcaption{left:22px;right:22px;bottom:22px}.values-strip{padding:25px 6%;gap:12px;justify-content:space-between;font-size:10px}.values-strip>span+span:before{display:none}.section{padding-top:60px;padding-bottom:60px}.services{display:block}.section-heading>p:last-child{max-width:100%;margin-bottom:30px}h2{font-size:38px}.service{padding-top:24px!important;border-top:1px solid var(--line)!important}.service h3{font-size:20px}.service p{font-size:16px}.about{grid-template-columns:1fr;gap:38px}.about-brand{min-height:345px;order:2}.big-r{font-size:150px}.about-copy{order:1}.about-place{font-size:10px}.contact{grid-template-columns:1fr;gap:35px;padding:55px 6%}.contact h2{font-size:38px}.contact p br{display:none}.contact-details{padding:27px 0 0;border-top:1px solid #5c567f;border-left:0}.contact-details .region{margin-top:18px}footer{align-items:flex-start;flex-wrap:wrap;gap:22px;padding-top:28px}.footer-brand{flex-basis:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}

/* Keep supporting text readable on every screen. */
.eyebrow,.hero .eyebrow,.contact-label,.about-place{font-size:12px}.brand-sub,.footer-brand small,.hero-visual figcaption small{font-size:12px}.brand-sub{letter-spacing:1px}.header nav,.button,.person div>span,.values-strip{font-size:14px}.service p{font-size:16px}.about-place{letter-spacing:1.3px}@media(max-width:720px){.header nav{font-size:14px}.header nav>a:nth-child(2){display:none}.values-strip{font-size:12px;line-height:1.5}.brand-sub{font-size:10px}.hero .eyebrow{letter-spacing:1px}}

/* Modern presentation and the original father-and-son portraits. */
.presentation{border-top:1px solid var(--line);padding-top:74px;padding-bottom:82px}.presentation-heading{display:grid;grid-template-columns:1fr 1.4fr;column-gap:100px;align-items:end}.presentation-heading .eyebrow{grid-column:1/-1}.presentation-heading h2{margin-bottom:0}.presentation-heading>p:last-child{font-size:16px;line-height:1.8;color:var(--muted);max-width:530px;margin:0}.presentation-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:38px}.presentation-card{background:var(--pale);padding:36px 38px;border-top:3px solid var(--ink)}.presentation-kicker{font-size:12px;letter-spacing:1.7px;color:var(--muted);line-height:1.6}.presentation-card h3{font-family:Georgia,'Times New Roman',serif;font-size:30px;font-weight:400;line-height:1.2;letter-spacing:-.6px;margin:20px 0 15px}.presentation-card p{font-size:16px;line-height:1.8;color:var(--muted);margin:0}.about{grid-template-columns:1.15fr 1fr;gap:64px}.team-portraits{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.team-person{margin:0;background:var(--pale);min-width:0}.team-person img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 35%}.team-person figcaption{padding:21px 18px}.team-person strong{display:block;font-size:18px;font-weight:500;line-height:1.4}.team-person figcaption span{display:block;margin-top:5px;font-size:14px;color:var(--muted)}.team-caption{grid-column:1/-1;text-align:center;font-size:14px;line-height:1.6;color:var(--muted);margin:3px 0 0}.team-link{display:inline-flex;align-items:center;gap:18px;margin-top:13px;border-bottom:1px solid var(--ink);padding-bottom:9px;font-size:14px;line-height:1.6}.team-link:hover{color:#6d638f}.about-copy strong{font-weight:600}.hero .eyebrow{flex-wrap:wrap}.hero-caption{font-size:14px}
@media(max-width:1390px){.presentation-heading{gap:0 65px}.about{gap:40px}}
@media(max-width:1000px){.presentation-heading{column-gap:40px}.presentation-card{padding:28px}.presentation-card h3{font-size:27px}.about{grid-template-columns:1fr;gap:36px}.about-copy{order:0;max-width:690px}.team-portraits{order:1;max-width:660px;width:100%}.team-person img{aspect-ratio:4/5}.presentation{padding-top:60px;padding-bottom:60px}}
@media(max-width:720px){.presentation-heading{display:block}.presentation-heading h2{margin-bottom:22px}.presentation-grid{grid-template-columns:1fr;gap:20px;margin-top:28px}.presentation-card{padding:28px 25px}.team-portraits{gap:12px}.team-person figcaption{padding:17px 12px}.team-person strong{font-size:16px}.team-person figcaption span{font-size:14px}.team-caption{font-size:13px}.hero .eyebrow{font-size:12px;letter-spacing:.8px}.values-strip{flex-wrap:wrap;justify-content:center;gap:12px 22px}.hero-caption{font-size:13px}.presentation-card h3{font-size:28px}}

/* Readable legal information using the site's established typography. */
.legal-page{max-width:920px;margin:0 auto;padding:38px 6% 90px;min-height:65vh}.legal-back{display:inline-block;font-size:14px;margin-bottom:45px;text-decoration:underline;text-underline-offset:4px}.legal-page h1{font-size:clamp(42px,6vw,64px);letter-spacing:-1.5px;margin-bottom:20px;overflow-wrap:anywhere}.legal-page .eyebrow{margin-bottom:15px}.legal-intro{color:var(--muted);margin-bottom:40px!important}.legal-page section{border-top:1px solid var(--line);padding-top:25px;margin-top:28px}.legal-page h2{font-family:Arial,Helvetica,sans-serif;font-size:22px;font-weight:500;letter-spacing:0;line-height:1.4;margin:0 0 14px;overflow-wrap:anywhere}.legal-page p,.legal-page address,.legal-page li{font-size:16px;line-height:1.8;font-style:normal;color:var(--muted);margin-top:0}.legal-page strong{color:var(--ink)}.legal-page ul{padding-left:22px}.legal-page a:not(.legal-back){color:var(--ink);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.email-link{text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}footer>a{font-size:14px}footer>a[aria-current]{text-decoration:underline;text-underline-offset:4px}@media(max-width:720px){.legal-page{padding-top:25px;padding-bottom:55px}.legal-page h2{font-size:20px}.legal-back{margin-bottom:32px}}
