/* A quieter Swiss house: warm stone, heraldic accents and editorial serif type. */
:root{--paper:#f7f5ef;--ink:#243e35;--muted:#617169;--line:#d8d9ce;--panel:#eceee5;--gold:#9b8152;--wash:#e7ebe2;--deep:#173b34}
html.dark{--paper:#142820;--ink:#eeeade;--muted:#b1beb1;--line:#3d5145;--panel:#20382d;--wash:#1b3026;--gold:#c1a878;--deep:#10241e}
html[data-palette=ancestry]{--paper:#f7f5ef;--ink:#273f50;--muted:#63747b;--line:#d4d9d7;--panel:#e9eeec;--wash:#e4eaeb;--gold:#9d8050;--deep:#203d50;--hero-veil:linear-gradient(90deg,#102c3de6 0%,#183b50ab 43%,#203c5020 85%)}
html[data-palette=ancestry].dark{--paper:#14232d;--ink:#f0ece2;--muted:#afbdc3;--line:#3d505b;--panel:#21353f;--wash:#1b2e38;--gold:#c8ad7c;--deep:#10222e;--hero-veil:linear-gradient(90deg,#0d2331ed 0%,#163448b8 43%,#1c354830 85%)}
body{font-family:Arial,Helvetica,sans-serif;line-height:1.8}
h1,h2,h3,.lead,.stat{font-family:Georgia,'Times New Roman',serif;font-weight:400}
h2{font-size:clamp(35px,3.7vw,57px);line-height:1.15;letter-spacing:-1.5px}h2 em{font-style:italic;color:var(--gold)}h3{letter-spacing:-.6px}
.eyebrow,.index,.button,.text-link,.light-link,.local-nav,.footer-links,.footer-bottom,.footer-bottom button,.values,.location,summary,.numbers p{font-family:Arial,Helvetica,sans-serif}
.eyebrow{font-size:10px;letter-spacing:2.2px;color:var(--gold);font-weight:600}.index{font:italic 19px Georgia,serif;color:var(--gold)}
header{height:96px;padding:0 4%;border-bottom:1px solid var(--line)}.brand{padding:0;gap:14px}.brand>span:not(.crest-pair){font:23px Georgia,serif;letter-spacing:2.5px}.brand small{font:7px Arial,sans-serif;letter-spacing:1.8px;margin-top:7px}.brand img{width:36px;height:47px}header nav{gap:20px}header nav>a,header nav>button{border:0;padding:0;font:11px Arial,sans-serif;letter-spacing:.1px;text-transform:none;height:auto}header nav>a:hover{color:var(--gold);background:none}header nav>a[aria-current=page]{box-shadow:none;color:var(--gold)}header .nav-contact{background:none;color:var(--ink);padding-left:20px;border-left:1px solid var(--line)}header .nav-contact:hover{background:none}header nav>.palette-toggle,header nav>.theme-toggle{font:9px Arial,sans-serif!important;padding:9px 0;letter-spacing:.2px}header nav>.palette-toggle:hover,header nav>.theme-toggle:hover{background:none;color:var(--gold)}
.photo-hero{margin:0;width:100%;min-height:740px;align-items:flex-start;text-align:left;padding:100px 8% 75px;justify-content:center}.photo-hero .hero-meta{left:8%;right:8%;top:30px;font:9px Arial,sans-serif;letter-spacing:1.7px}.photo-hero .hero-lockup{flex-direction:row;justify-content:flex-start;gap:20px;margin:15px 0 30px}.photo-hero .hero-lockup img{width:48px;height:60px}.photo-hero .hero-lockup>span:not(.crest-pair){font-size:clamp(38px,5.4vw,82px);letter-spacing:.075em}.photo-hero .hero-lockup:after{display:none}.photo-hero h1{font-size:clamp(45px,4.8vw,72px);line-height:1.12;letter-spacing:-1.8px;margin:0 0 26px}.photo-hero h1 br{display:block}.photo-hero h1 em{color:var(--hero-accent);font-weight:400}.photo-hero .hero-copy{font-size:14px;max-width:480px;margin-bottom:28px}.photo-hero .hero-veil:before{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);mask-image:linear-gradient(90deg,#000 0%,#000d 38%,transparent 78%);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000d 38%,transparent 78%)}.photo-hero .hero-bottom{font:9px Arial,sans-serif;letter-spacing:1.4px;margin-top:38px}.hero-actions{gap:22px}.button{padding:14px 22px;font-size:10px;letter-spacing:1px}.photo-hero .button:not(.solid){border:0;border-bottom:1px solid #d9dece80;padding-left:0;padding-right:0;background:none}.text-link{font-size:11px;border-color:var(--gold);letter-spacing:.3px;gap:20px}
.wrap{padding-top:95px;padding-bottom:95px;max-width:1500px}.editorial{grid-template-columns:1fr 1.05fr;gap:12%;border:0}.editorial>div>p{line-height:1.9}.editorial h2{font-size:clamp(34px,3.6vw,54px)}.editorial .text-link+.text-link{margin-left:22px}.numbers{margin:0 8%;max-width:none;padding:35px 0;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.numbers>div{padding:8px 16px;border-color:var(--line)}.stat{font-size:clamp(36px,4vw,57px);letter-spacing:-1.5px}.numbers p{font-size:11px;letter-spacing:0}
.card-section{padding-top:80px;padding-bottom:90px}.activity-grid{border:0;gap:38px}.activity-grid article{border:0;padding:0 0 22px;border-bottom:1px solid var(--line)}.activity-grid article:last-child{border-bottom:1px solid var(--line)}.activity-grid article:hover{background:none}.card-photo{margin:0 0 25px;height:250px}.activity-grid h3{font-size:32px;margin:16px 0 18px}.activity-grid p{font-size:14px;min-height:90px}.activity-grid .text-link{padding:7px 0}.card-photo img{filter:saturate(.65)}
main>.editorial:nth-last-of-type(2){max-width:none;background:var(--wash);padding-left:8%;padding-right:8%;border-top:1px solid var(--line)}.contact{margin:0;border:0;padding:80px 8%;text-align:left;background:var(--deep);color:#f3efe3;position:relative}.contact .eyebrow{color:#c9b383}.contact h2{font-size:clamp(40px,4.4vw,65px);max-width:650px}.contact p:not(.eyebrow){color:#c0cec9}.contact .button.solid{background:#ede8da;color:var(--deep);border-color:#ede8da}.contact .location{color:#c9b383}.contact-email{font-family:Georgia,serif;border-color:#b7a177}.contact:after{content:'';position:absolute;top:80px;bottom:80px;right:15%;width:1px;background:#c1ad783d;pointer-events:none}
.page-opening{margin:0;min-height:550px;border:0;background:var(--wash);grid-template-columns:1fr 1.05fr}.page-opening .page-hero{padding:75px 12% 75px 16%}.page-opening .page-hero h1{font-family:Georgia,serif;font-size:clamp(43px,4.4vw,68px);letter-spacing:-1.6px;line-height:1.12}.page-photo{min-height:550px}.page-opening .page-deck{font-size:15px;line-height:1.9}.page-photo figcaption,.photo-interlude figcaption{font-family:Arial,sans-serif;font-size:9px}.photo-interlude{margin:0;height:460px}.local-nav{font-size:11px;padding-top:22px;padding-bottom:22px}.footer-top>p{font:italic 19px/1.5 Georgia,serif;color:var(--muted)}.footer-links{font-size:11px}.footer-bottom{font-size:10px}.footer-bottom button{font-size:10px}.reading-progress{height:2px}.section-index{display:none}
@media(min-width:761px) and (max-width:1200px){header{padding:0 3%;height:88px}header nav{gap:12px}header .brand{padding:0;gap:9px}header .brand>span:not(.crest-pair){font-size:18px;letter-spacing:1.5px}header nav>a{padding:0;font-size:10px}header nav>.palette-toggle,header nav>.theme-toggle{padding:8px 0;font-size:8px!important}header .nav-contact{padding-left:12px}.card-photo{height:210px}.activity-grid{gap:24px}.photo-hero{min-height:700px}}
@media(max-width:900px) and (min-width:761px){header nav{gap:9px}.brand small{display:none}header .brand img{width:27px;height:36px}header .brand>span:not(.crest-pair){font-size:16px}header nav>a{font-size:9px}}
@media(max-width:760px){header{height:82px;padding:0 6%}.brand>span:not(.crest-pair){font-size:20px}.brand img{width:31px;height:41px}.menu-toggle{padding:15px 0 15px 20px;border:0;font-family:Arial,sans-serif}header nav{top:82px;left:0;padding:15px 6%;gap:0}header nav>a,header nav>button,header nav>.theme-toggle,header nav>.palette-toggle{padding:15px 0;font-size:12px!important;border:0;border-bottom:1px solid var(--line);height:auto}header .nav-contact{padding-left:0}.photo-hero{margin:0;min-height:690px;padding:80px 7% 45px;align-items:flex-start}.photo-hero .hero-meta{left:7%;right:7%;top:22px;font-size:7px;letter-spacing:.8px}.hero-meta span:last-child{max-width:115px;text-align:right}.photo-hero .hero-lockup{gap:12px;margin:20px 0 28px}.photo-hero .hero-lockup img{width:32px;height:40px}.photo-hero .hero-lockup>span:not(.crest-pair){font-size:clamp(25px,7vw,47px);letter-spacing:.04em}.photo-hero h1{font-size:clamp(38px,10vw,56px);letter-spacing:-1.2px}.photo-hero .hero-copy{font-size:13px;max-width:340px}.photo-hero .hero-actions{align-items:flex-start;gap:13px;width:auto}.photo-hero .hero-bottom{gap:13px;font-size:7px;letter-spacing:.5px}.photo-hero .hero-veil:before{mask-image:linear-gradient(90deg,#000,#000b 70%,transparent);-webkit-mask-image:linear-gradient(90deg,#000,#000b 70%,transparent)}.wrap{padding:60px 7%}.editorial{grid-template-columns:1fr;gap:15px}.editorial h2{font-size:38px}.numbers{margin:0 7%;padding:25px 0}.numbers>div{padding:20px 8px}.numbers p{font-size:10px}.stat{font-size:42px}.activity-grid{gap:32px}.activity-grid article:nth-child(n){margin-top:0;padding:0 0 28px}.card-photo{margin:0 0 20px;height:250px}.activity-grid p{min-height:0}.activity-grid h3{font-size:31px}.contact{padding:60px 7%;margin:0}.contact h2{font-size:43px}.contact:after{display:none}.page-opening{margin:0;grid-template-columns:1fr}.page-opening .page-hero{padding:50px 7%}.page-opening .page-hero h1{font-size:44px}.page-photo{min-height:320px}.photo-interlude{margin:0;height:300px}.local-nav{padding-top:20px;padding-bottom:20px}.editorial .text-link+.text-link{margin-left:0;margin-right:20px}.footer-top .brand>span:not(.crest-pair){font-size:20px}}

/* Aligned photography and a full-width, blue approach panel. */
.activity-grid{align-items:stretch}.activity-grid article{display:flex;flex-direction:column}.activity-grid article:nth-child(n){margin-top:0}.activity-grid .card-photo{flex-shrink:0;height:240px}.activity-grid article>.text-link{align-self:flex-start;margin-top:auto}.activity-grid h3{min-height:74px;display:flex;align-items:flex-start}.activity-grid p{min-height:0;margin-bottom:25px}
.contact{text-align:center}.contact h2{margin-left:auto;margin-right:auto}.contact:after{display:none}
.longer-view{display:grid;grid-template-columns:1fr 1fr;background:#233f50;color:#f3f0e7;margin:0}.longer-view-photo{margin:0;position:relative;min-height:690px;overflow:hidden}.longer-view-photo img{position:absolute;width:100%;height:100%;object-fit:cover;filter:saturate(.55) brightness(.88)}.longer-view-photo:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#142d3dbb)}.longer-view-photo figcaption{position:absolute;bottom:30px;left:8%;right:8%;z-index:1;color:#f4f1e9;font:9px/1.6 Arial,sans-serif;letter-spacing:1.8px}.longer-view-copy{padding:75px 13%}.longer-view-copy .eyebrow{color:#d2ba8c}.longer-view h2{font-size:clamp(38px,3.7vw,57px)}.longer-view h2 em{color:#d2ba8c}.longer-view-copy>p:not(.eyebrow){font-size:14px;color:#cbd7dc;line-height:1.85}.view-principle{display:flex;gap:24px;border-top:1px solid #c4d0d333;padding-top:23px;margin-top:25px}.view-principle>span{font-size:10px;color:#d2ba8c;padding-top:6px}.view-principle h3{font-size:24px;margin:0 0 10px}.view-principle p{font-size:13px;line-height:1.8;color:#cbd7dc;margin:0}.view-links{display:flex;flex-wrap:wrap;gap:12px 25px;margin-top:27px}.view-links .text-link{color:#f4f0e6;border-color:#b8a477;font-size:11px}html.dark .longer-view{background:#1c3444}html.dark .longer-view-photo img{filter:saturate(.5) brightness(.75)}
@media(max-width:1050px){.longer-view-copy{padding:60px 9%}.longer-view-photo{min-height:740px}.activity-grid h3{font-size:29px}}
@media(max-width:760px){.longer-view{grid-template-columns:1fr}.longer-view-photo{min-height:360px}.longer-view-copy{padding:55px 7%}.longer-view h2{font-size:42px}.activity-grid h3{min-height:0;font-size:31px}.activity-grid .card-photo{height:250px}.contact h2{margin-left:auto;margin-right:auto}}
/* Closing invitation shares the cool stone palette of Family & Governance. */
.contact,html.dark .contact{background:var(--paper);color:var(--ink);border-top:1px solid var(--line)}
.contact .eyebrow,.contact .location,html.dark .contact .eyebrow,html.dark .contact .location{color:var(--gold)}
.contact p:not(.eyebrow),html.dark .contact p:not(.eyebrow){color:var(--muted)}
.contact h2{max-width:900px}.contact h2 em{color:var(--gold);font-style:italic}
.contact .button.solid,html.dark .contact .button.solid{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.contact .button.solid:hover,html.dark .contact .button.solid:hover{background:var(--deep);color:#f7f3ea;border-color:var(--deep)}
.contact-email{border-color:var(--gold)}
.longer-view-photo img{object-position:45% center}
/* Fine separation while preserving the original footer colour and spacing. */
footer.wrap{border-top:1px solid var(--line)}

/* Let the headline lead; the house signature lives in the header. */
.photo-hero{min-height:680px;padding-top:105px;padding-bottom:75px}
.photo-hero h1{font-size:clamp(48px,5.6vw,82px);line-height:1.12;margin:0 0 28px;max-width:850px}
@media(max-width:760px){.photo-hero{min-height:620px;padding-top:100px;padding-bottom:50px}.photo-hero h1{font-size:clamp(38px,10vw,56px);margin-bottom:25px}}

/* More readable navigation, retaining room for the house signature. */
header nav>a{font-size:14px;line-height:1.4}header nav>.theme-toggle{font-size:12px!important}.menu-toggle{font-size:14px}
@media(min-width:761px) and (max-width:1200px){header nav>a{font-size:13px}header nav{gap:14px}header nav>.theme-toggle{font-size:11px!important}}
@media(min-width:761px) and (max-width:900px){header nav>a{font-size:12px}header nav{gap:10px}header .brand>span:not(.crest-pair){font-size:16px}}
@media(max-width:760px){header nav>a,header nav>.theme-toggle{font-size:15px!important;line-height:1.5}}
