
:root{--navy:#0f2744;--navy2:#172d46;--ink:#121e30;--muted:#666d78;--gold:#b89b5e;--gold2:#d1b780;--cream:#f8f7f4;--stone:#e8e3db;--stroke:#dcd8d2;--white:#fff;--sans:'Helvetica Neue',Arial,Helvetica,sans-serif;--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:98px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);line-height:1.66;font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-weight:400}img{display:block;max-width:100%}::selection{background:var(--gold2);color:var(--navy)}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.container{width:min(1230px,calc(100% - 104px));margin-inline:auto}.sr{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:absolute;top:-150px;left:14px;z-index:100;background:#fff;padding:10px}.skip:focus{top:10px}
.site-header{position:sticky;top:0;z-index:20;background:rgba(248,247,244,.94);border-bottom:1px solid rgba(23,43,59,.12);backdrop-filter:blur(15px)}.header-in{min-height:90px;display:flex;gap:44px;align-items:center}.logo{display:inline-flex;flex-direction:column;gap:3px;min-width:176px;color:var(--navy);align-items:center}.logo-main{font-family:Arial,Helvetica,sans-serif;font-weight:300;font-size:37px;letter-spacing:.22em;line-height:1;transform:translateX(.11em)}.logo-sub{font-family:Arial,Helvetica,sans-serif;font-weight:400;letter-spacing:.57em;font-size:9px;line-height:1.5;transform:translateX(.28em)}.site-nav{display:flex;align-items:center;gap:28px;margin-left:auto}.site-nav a{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:#384455;white-space:nowrap}.site-nav a:hover,.site-nav a.active{color:var(--gold)}.lang{display:flex;align-items:center;gap:8px;border-left:1px solid var(--stroke);padding-left:15px;font-size:11px;letter-spacing:.13em}.lang a{opacity:.45}.lang a.active{opacity:1;color:var(--navy);font-weight:700}.header-cta{white-space:nowrap;background:var(--gold);color:#fff;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:13px 17px}.header-cta:hover,.btn-gold:hover{background:#a78748}.mobile-nav{display:none}.mobile-nav summary{cursor:pointer;list-style:none;border:1px solid var(--stroke);padding:9px 12px;font-size:11px;letter-spacing:.1em}.mobile-nav summary::-webkit-details-marker{display:none}
.eyebrow{font-size:10px;letter-spacing:.27em;text-transform:uppercase;font-weight:600;color:#68717e;line-height:1.6}.eyebrow.gold{color:var(--gold)}.serif{font-family:var(--serif);letter-spacing:-.025em;font-weight:400}.gold-rule{width:45px;height:2px;background:var(--gold);display:block;margin:22px 0}.lead{font-family:var(--serif);font-size:clamp(22px,2.35vw,31px);line-height:1.36}.bodycopy{font-size:15px;line-height:1.86;color:#5f6772}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:44px;padding:13px 19px;font-size:10px;letter-spacing:.12em;font-weight:700;text-transform:uppercase;border:1px solid var(--navy);transition:background .15s,color .15s;white-space:nowrap}.btn:hover{background:var(--navy);color:#fff}.btn-gold{border-color:var(--gold);background:var(--gold);color:#fff}.btn-outline{background:transparent;color:var(--navy)}.btn-light{border:1px solid rgba(255,255,255,.6);color:#fff}.btn-light:hover{background:#fff;color:var(--navy)}.link{display:inline-flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.17em;font-weight:700;text-transform:uppercase;color:#9a7a40;border-bottom:1px solid var(--gold);padding-bottom:8px}.link:hover{color:var(--navy)}.page-section{padding:105px 0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:85px}.section-title{font-family:var(--serif);font-size:clamp(37px,4.1vw,57px);line-height:1.13;letter-spacing:-.03em;margin:16px 0 21px;font-weight:400}.section-desc{font-family:var(--serif);font-size:21px;line-height:1.54;color:#5a5b61}.line-top{border-top:1px solid var(--stroke)}
.hero{position:relative;min-height:640px;background:#f8f7f4;overflow:hidden}.hero-media{position:absolute;inset:0 0 0 36%;background-image:linear-gradient(90deg,var(--cream) 0%,rgba(248,247,244,.92) 7%,rgba(248,247,244,.13) 45%,rgba(248,247,244,0) 74%),url('alpine-residence.jpg');background-size:cover;background-position:center}.hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f8f7f4 0%,rgba(248,247,244,.91) 20%,transparent 65%);z-index:1;pointer-events:none}.hero-in{position:relative;z-index:2;min-height:640px;display:flex;align-items:center;padding-top:40px;padding-bottom:55px}.hero-content{max-width:690px}.hero h1{font-family:var(--serif);font-size:clamp(57px,5.4vw,88px);line-height:1.03;letter-spacing:-.036em;max-width:690px;margin:23px 0 24px}.hero .lead{font-size:21px;max-width:550px;color:#3e4a59}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-bottom{position:relative;z-index:2;border-top:1px solid rgba(17,37,58,.12);background:rgba(248,247,244,.9)}.hero-bottom-in{padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:15px}.hero-bottom span{font-size:9px;letter-spacing:.19em;text-transform:uppercase;color:#626b74}.hero-bottom b{color:var(--gold);margin:0 12px;font-weight:400}
.intro-block{max-width:740px;margin-bottom:50px}.intro-block .section-title{max-width:720px}.pillars{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--stroke);border-bottom:1px solid var(--stroke)}.pillar{padding:39px 55px 42px 0}.pillar+.pillar{border-left:1px solid var(--stroke);padding-left:55px;padding-right:0}.pillar-num{font-size:10px;letter-spacing:.24em;color:#a17c3c;text-transform:uppercase}.pillar h3{font-family:var(--serif);font-size:36px;line-height:1.16;max-width:480px;margin:19px 0 18px}.pillar p{font-size:15px;line-height:1.83;color:var(--muted);min-height:92px;max-width:480px}.pillar ul{list-style:none;display:flex;gap:9px 22px;flex-wrap:wrap;margin:20px 0 28px;padding:0}.pillar li{font-size:10px;letter-spacing:.06em;color:#465166;border-bottom:1px solid #dfd9cf;padding:5px 0}
.band{background:var(--navy);color:#fff}.band-in{padding:52px 0}.band-grid{display:grid;grid-template-columns:1.1fr repeat(3,1fr);gap:0}.band-item{padding:0 34px;border-left:1px solid rgba(255,255,255,.22)}.band-item:first-child{padding-left:0;border:0}.band-item .eyebrow{color:var(--gold2)}.band-item h3{font-family:var(--serif);font-size:24px;line-height:1.24;margin:16px 0 6px}.band-item p{font-size:12px;color:#c2c7cc;line-height:1.7;margin:0}.band-intro{font-family:var(--serif);font-size:28px;line-height:1.22;margin:15px 0 0}
.mandate-split{display:grid;grid-template-columns:45% 55%;min-height:480px;background:var(--white)}.mandate-photo{background-image:url('alpine-outlook.jpg');background-size:cover;background-position:65% center;min-height:480px}.mandate-content{padding:70px min(7vw,95px);align-self:center;max-width:755px}.mandate-content .section-title{margin-bottom:14px}.mini-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;padding:26px 0;border-top:1px solid var(--stroke);border-bottom:1px solid var(--stroke);margin:24px 0}.mini-list div{font-size:12px;line-height:1.5}.mini-list b{font-weight:600;color:var(--navy);display:block}.mini-list span{color:var(--muted);display:block}
.founder{background:#f0eee9}.founder-grid{display:grid;grid-template-columns:.76fr 1.24fr;gap:115px}.founder-grid .section-title{max-width:380px}.founder-grid .role{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#9b7e50;margin:0 0 24px;font-weight:700}.founder-grid h3{font-family:var(--serif);font-size:31px;margin-bottom:5px}.founder-grid p:not(.role){font-size:15px;color:#59616c;line-height:1.87}.founder-notes{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:26px;padding-top:21px;border-top:1px solid #d8d4cb}.founder-notes span{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#7a6d59}.founder-notes span:before{content:'— ';color:var(--gold)}
.contact{background:var(--navy);color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact .section-title{max-width:530px}.contact .bodycopy{color:#bec8d2}.contact-link{font-family:var(--serif);font-size:clamp(24px,2.65vw,35px);border-bottom:1px solid var(--gold);padding-bottom:7px;display:inline-block;margin-top:12px}.contact-list{margin-top:18px}.contact-option{display:flex;justify-content:space-between;gap:18px;border-top:1px solid rgba(255,255,255,.23);padding:22px 0}.contact-option:last-child{border-bottom:1px solid rgba(255,255,255,.23)}.contact-option b{font-family:var(--serif);font-size:21px;font-weight:400}.contact-option small{font-size:12px;color:#bfc9d1;display:block;margin-top:6px}.contact-option:hover b{color:var(--gold2)}.contact-option>span:last-child{color:var(--gold2)}
.footer{background:#0b1e35;color:#c6cdd6;padding:54px 0 27px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:35px}.footer .logo{color:#fff;align-items:start;transform:scale(.78);transform-origin:top left;margin-bottom:-6px}.footer .logo-sub{margin-left:4px}.footer p,.footer a{font-size:12px;line-height:1.8;color:#b8c1cc}.footer h4{font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:#d2b985;font-weight:600;margin:0 0 18px}.footer a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding-top:20px;margin-top:35px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#9ba6b2}.legal{font-size:10px;line-height:1.7;color:#8996a5;margin-top:25px;max-width:900px}
.subhero{position:relative;background:var(--navy);color:#fff;min-height:390px;display:flex;align-items:center;overflow:hidden}.subhero::after{position:absolute;content:'';inset:0 0 0 48%;background:linear-gradient(90deg,var(--navy),transparent 80%),url('alpine-residence.jpg') center/cover;opacity:.21}.subhero-in{padding:85px 0;position:relative;z-index:1}.subhero h1{font-family:var(--serif);font-size:clamp(53px,5.4vw,79px);max-width:800px;line-height:1.07;margin:21px 0 18px}.subhero p{max-width:680px;color:#cad0d8;font-family:var(--serif);font-size:23px;line-height:1.45;margin:0}.subhero .eyebrow{color:var(--gold2)}
.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--stroke);border-left:1px solid var(--stroke);margin-top:46px}.service-card{padding:42px;border-right:1px solid var(--stroke);border-bottom:1px solid var(--stroke);background:#fff}.service-card .number{font-size:10px;letter-spacing:.18em;color:#a38043}.service-card h3{font-family:var(--serif);font-size:29px;line-height:1.22;margin:22px 0 15px}.service-card p{color:#677079;line-height:1.82;font-size:14px}.audience-row{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:38px}.audience{border-top:2px solid var(--gold);padding-top:23px}.audience h3{font-family:var(--serif);font-size:25px}.audience p{font-size:14px;color:var(--muted)}
.themes{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--stroke);border-bottom:1px solid var(--stroke);margin:42px 0}.theme{padding:37px 32px}.theme:first-child{padding-left:0}.theme+.theme{border-left:1px solid var(--stroke)}.theme h3{font-family:var(--serif);font-size:28px;line-height:1.24;margin:25px 0 14px}.theme p{font-size:14px;color:var(--muted)}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:38px}.case{border:1px solid var(--stroke);background:#fff;padding:36px;min-height:240px}.case .eyebrow{font-size:9px}.case h3{font-family:var(--serif);font-size:27px;line-height:1.2;margin:22px 0 11px}.case p{color:var(--muted);font-size:14px;line-height:1.77}.case-tag{padding-top:18px;margin-top:26px;border-top:1px solid var(--stroke);font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:#9a7b44}.disclaimer{font-size:11px;color:#85878b;margin-top:18px;max-width:950px}.criteria{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:40px 0;border-top:1px solid var(--stroke);border-left:1px solid var(--stroke)}.criterion{padding:31px 32px;border-right:1px solid var(--stroke);border-bottom:1px solid var(--stroke);background:#fff}.criterion h3{font-family:var(--serif);font-size:26px;margin:0 0 13px}.criterion p{font-size:14px;color:var(--muted);margin:0}.note{font-size:12px;color:#777f87;line-height:1.7;margin:17px 0}.text-panel{background:#ede9e1;padding:45px}.text-panel .section-title{font-size:42px}.text-panel p{font-size:15px;color:#566070}
@media(max-width:1170px){.container{width:min(1230px,calc(100% - 64px))}.site-nav{gap:16px}.site-nav a{font-size:10px;letter-spacing:.06em}.header-in{gap:25px}.logo{min-width:140px}.logo-main{font-size:30px}.mandate-content{padding:55px}.two-col{gap:50px}.contact-grid{gap:65px}.founder-grid{gap:70px}}
@media(max-width:850px){.site-nav,.lang,.header-cta{display:none}.header-in{min-height:76px}.mobile-nav{display:block;margin-left:auto;position:relative}.mobile-nav[open] .menu-links{display:flex}.menu-links{position:absolute;z-index:22;right:0;top:45px;display:flex;flex-direction:column;min-width:min(360px,85vw);background:#fff;box-shadow:0 13px 30px #172b3f24;padding:14px 0;border:1px solid var(--stroke)}.menu-links a{padding:11px 20px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #eee}.container{width:calc(100% - 46px)}.hero,.hero-in{min-height:570px}.hero-media{left:21%;opacity:.45}.hero::before{background:linear-gradient(90deg,var(--cream) 0%,rgba(248,247,244,.92) 43%,rgba(248,247,244,.25) 100%)}.hero-content{max-width:610px}.hero h1{font-size:clamp(51px,8.2vw,72px)}.pillars{grid-template-columns:1fr}.pillar,.pillar+.pillar{padding:35px 0;border-left:0}.pillar+.pillar{border-top:1px solid var(--stroke)}.pillar p{min-height:auto}.band-grid{grid-template-columns:1fr 1fr;gap:32px 0}.band-item:nth-child(3){border:0;padding-left:0}.mandate-split{grid-template-columns:1fr}.mandate-photo{min-height:280px}.mandate-content{max-width:none;padding:55px 7vw}.founder-grid,.contact-grid,.two-col{grid-template-columns:1fr;gap:25px}.page-section{padding:77px 0}.case-grid{gap:13px}.subhero{min-height:310px}.subhero-in{padding:60px 0}}
@media(max-width:530px){.container{width:calc(100% - 38px)}.hero,.hero-in{min-height:585px}.hero-media{left:0;opacity:.3;background-position:64% center}.hero::before{background:linear-gradient(90deg,#f8f7f4 0%,rgba(248,247,244,.94) 42%,rgba(248,247,244,.45) 100%)}.hero h1{font-size:54px;line-height:1.04}.hero .lead{font-size:19px}.hero-bottom-in{justify-content:start;flex-wrap:wrap}.hero-bottom span{font-size:9px;letter-spacing:.1em}.hero-bottom b{margin:0 4px}.section-title{font-size:39px}.pillar h3{font-size:32px}.band-grid{grid-template-columns:1fr}.band-item,.band-item:nth-child(3){padding:0 0 21px;margin-bottom:18px;border:0;border-bottom:1px solid #456078}.band-item:last-child{border:0;margin-bottom:0;padding-bottom:0}.band-item h3{font-size:25px}.mandate-photo{min-height:215px}.mandate-content{padding:42px 20px}.mini-list{grid-template-columns:1fr}.contact-grid{gap:35px}.footer-grid{grid-template-columns:1fr;gap:20px}.footer-bottom{flex-direction:column}.footer .logo{margin:0}.service-grid,.criteria{grid-template-columns:1fr}.service-card{padding:28px}.themes{grid-template-columns:1fr}.theme,.theme:first-child{padding:26px 0;border-left:0}.theme+.theme{border-top:1px solid var(--stroke)}.case-grid,.audience-row{grid-template-columns:1fr}.case{padding:28px;min-height:0}.subhero h1{font-size:51px}.subhero p{font-size:20px}.text-panel{padding:28px}.logo{min-width:130px}.logo-main{font-size:31px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:0.01ms!important;transition-duration:0.01ms!important}}

/* Top utility bar: language + client login (Alphalytics) */
.topbar{background:var(--navy);color:#fff}
.topbar-in{display:flex;justify-content:flex-end;align-items:center;gap:22px;min-height:34px}
.topbar .lang{border-left:0;padding-left:0;color:#fff}
.topbar .lang a{opacity:.55}
.topbar .lang a.active{color:#fff;opacity:1}
.topbar-login{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold2);border-left:1px solid rgba(255,255,255,.2);padding-left:22px}
.topbar-login:hover{color:#fff}
@media(max-width:850px){.topbar .lang{display:flex}}
@media(min-width:851px) and (max-width:900px){.header-cta{display:none}}

/* V10 — Editorial text treatment: retain existing heading and logo fonts.
   Use the established serif family for descriptive copy and the sans family
   for wayfinding, labels, metadata and controls. No third-party font loading. */
:root { --editorial: Georgia, 'Times New Roman', serif; }
.bodycopy,
.pillar p,
.section-desc,
.theme p,
.service-card p,
.case p,
.criterion p,
.audience p,
.text-panel p,
.founder-grid p:not(.role),
.contact-option small,
.mini-list span,
.band-item p,
.footer-grid p {
  font-family: var(--editorial);
  font-size: 17px;
  font-weight: 400;
  line-height: 1.72;
  letter-spacing: -.006em;
}
.bodycopy { font-size: 18px; line-height: 1.75; }
.pillar p { font-size: 18px; line-height: 1.65; min-height: 112px; }
.founder-grid p:not(.role) { font-size: 18px; line-height: 1.72; }
.band-item p, .mini-list span, .contact-option small, .footer-grid p { font-size: 15px; }
.footer-grid p { line-height: 1.67; }
.eyebrow, .link, .btn, .site-nav, .header-cta, .founder-grid .role,
.mini-list b, .outlook-fact span, .footer h4, .footer-bottom,
.pillar-num, .pillar li, .case-tag, .disclaimer, .legal {
  font-family: var(--sans);
}
/* The DACH mandate is a component of Investments, not a standalone site pillar. */
.outlook-section { background: #efece6; scroll-margin-top: 125px; }
.outlook-intro { display: grid; grid-template-columns: minmax(0,1.22fr) minmax(0,.78fr); gap: clamp(45px,7vw,112px); align-items: center; }
.outlook-copy .section-title { max-width: 690px; }
.outlook-copy .bodycopy { max-width: 700px; margin-bottom: 19px; }
.outlook-copy .btn { margin-top: 14px; }
.outlook-section .gold { color: #a17d40; }
.outlook-section .dot { display: inline-block; margin: 0 5px; color: #b8a47f; }
.outlook-facts { background: #f9f8f5; padding: clamp(26px,3.8vw,49px); border-top: 3px solid var(--gold); box-shadow: 0 14px 45px rgba(25,40,55,.045); }
.outlook-facts .eyebrow { padding-bottom: 22px; color: #9e7c44; }
.outlook-fact { padding: 19px 0; border-top: 1px solid var(--stroke); }
.outlook-fact span { display: block; font-size: 10px; text-transform: uppercase; letter-spacing: .16em; color: #858b90; margin-bottom: 6px; }
.outlook-fact strong { display: block; font-size: 18px; font-family: var(--editorial); font-weight: 400; color: var(--navy); line-height: 1.45; }
.outlook-criteria { margin-top: 76px; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; border-top: 1px solid #cfcac1; }
.outlook-criterion { padding: 30px 26px 0; border-left: 1px solid #cfcac1; }
.outlook-criterion:first-child { padding-left: 0; border-left: 0; }
.outlook-criterion .outlook-n { font: 600 10px var(--sans); letter-spacing: .14em; color: #a48145; }
.outlook-criterion h3 { font: 400 24px/1.22 var(--serif); margin: 20px 0 14px; }
.outlook-criterion p { font: 400 16px/1.66 var(--editorial); color: #656a70; margin: 0; }
@media(max-width:900px) {
  .outlook-intro { grid-template-columns: 1fr; gap: 45px; }
  .outlook-criteria { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 0; }
  .outlook-criterion:nth-child(3) { padding-left: 0; border-left: 0; }
}
@media(max-width:530px) {
  .bodycopy, .founder-grid p:not(.role) { font-size: 17px; line-height: 1.7; }
  .pillar p { min-height: unset; font-size: 17px; }
  .outlook-criteria { grid-template-columns: 1fr; margin-top: 52px; gap: 0; }
  .outlook-criterion, .outlook-criterion:first-child, .outlook-criterion:nth-child(3) {
    padding: 24px 0; border-left: 0; border-bottom: 1px solid #cfcac1;
  }
  .outlook-criterion h3 { margin: 12px 0; }
  .outlook-facts { padding: 29px 24px; }
}
