@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--green:#12362e;--paper:#f7f8f3;--lime:#dbe6d6;--muted:#5b6b63}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--green);font-family:'DM Sans',sans-serif;font-size:16px}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #be751d;outline-offset:6px}.header{height:106px;margin:0 5%;display:flex;align-items:center;border-bottom:1px solid #cbd2c7;gap:70px}.logo{font-family:'Manrope',sans-serif;font-size:46px;font-weight:800;letter-spacing:-3px}.logo span{font-family:Arial,sans-serif;font-size:13px;vertical-align:top;display:inline-block;letter-spacing:0;margin:12px 0 0 5px}nav{display:flex;gap:35px;font-size:15px}nav a:hover{opacity:.6}.header-note{margin-left:auto;font-size:14px}.hero{padding:52px 5% 53px}.hero-top,.hero-bottom{display:flex;justify-content:space-between;align-items:center}.eyebrow,.edition{font-size:12px;letter-spacing:1.6px;font-weight:600}.edition{opacity:.65}.hero h1{font-family:'Manrope',sans-serif;font-weight:500;font-size:clamp(58px,7.7vw,118px);line-height:1.06;letter-spacing:-6px;margin:47px 0 42px}.hero h1 em,.closing em{font-family:Georgia,serif;font-weight:400}p{line-height:1.65}.hero-bottom p{font-size:18px;margin:0}.circle-link{display:flex;gap:25px;align-items:center;font-size:14px}.circle-link b{display:grid;place-items:center;background:var(--green);color:var(--lime);width:56px;height:56px;border-radius:50%;font-size:25px;font-weight:400;transition:transform .2s}.circle-link:hover b{transform:translateY(5px)}.landscape{height:385px;position:relative;background:#526c65;overflow:hidden;margin:0 20px}.landscape img{width:100%;height:100%;object-fit:cover;object-position:50% 55%;display:block}.landscape:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#061f2299)}.image-caption{position:absolute;bottom:27px;left:4%;right:4%;display:flex;justify-content:space-between;color:white;font-size:12px;letter-spacing:1.7px;z-index:1}.section{padding:100px 5%}.about{display:grid;grid-template-columns:1fr 2fr;gap:45px;border-bottom:1px solid #cbd2c7}.section-label{margin-top:13px}h2{font-family:'Manrope',sans-serif;font-size:clamp(35px,4vw,59px);line-height:1.17;font-weight:500;letter-spacing:-2px;margin:0 0 32px}.about-copy{display:grid;grid-template-columns:1fr 1fr;gap:45px;max-width:800px}.about-copy p{margin:0;color:var(--muted);font-size:17px}.portfolio-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end}.portfolio-heading .eyebrow{grid-column:1/-1;margin:0 0 30px}.portfolio-heading h2{margin:0}.portfolio-heading>p:last-child{justify-self:end;color:var(--muted);margin:0 0 5px}.grid{margin-top:50px;display:grid;grid-template-columns:1fr 1fr;gap:22px}.card{min-height:445px;padding:30px 35px;display:flex;flex-direction:column}.card-top{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px;opacity:.75}.brand{height:205px;display:flex;align-items:center;justify-content:center;flex-direction:column;line-height:1.1}.brand>span{font-size:12px;letter-spacing:3px;margin-top:10px}.aha{background:#d8e2df;color:#193b34}.aha-brand{font-size:85px;font-weight:800;letter-spacing:-6px}.aha-brand>span{letter-spacing:5px;font-size:11px}.petit{background:#e4e9eb;color:#284651}.petit-brand{font-family:Georgia,serif;font-size:52px;letter-spacing:-2px}.petit-brand>span{font-family:'DM Sans',sans-serif;font-size:10px}.skars{background:#dfe5e7;color:#284651}.skars-brand{font-size:36px;letter-spacing:4px;font-family:Georgia,serif}.viking{background:#273f35;color:#edf1df}.viking-brand{font-size:63px;font-weight:800;letter-spacing:-3px}.viking-brand>span{font-size:23px;letter-spacing:8px;margin-top:0}.card-bottom{border-top:1px solid currentColor;padding-top:22px}.card h3{font-size:21px;font-weight:500;margin:0 0 10px;letter-spacing:-.5px}.card p{font-size:15px;max-width:460px;margin:0;opacity:.83;line-height:1.6}.card a{display:inline-flex;gap:30px;margin-top:18px;font-size:14px;border-bottom:1px solid transparent;padding-bottom:3px}.card a:hover{border-color:currentColor}.closing{background:var(--green);color:var(--paper);padding-top:75px;padding-bottom:75px}.closing .eyebrow{color:var(--lime);margin:0 0 35px}.closing h2{font-size:clamp(38px,4.5vw,65px)}.closing p:last-child{font-size:14px;color:#c4d3c6;margin-bottom:0}footer{padding:40px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer .logo{font-size:35px}footer p,footer>a:last-child{font-size:13px}footer p{color:var(--muted)}@media(min-width:1600px){.hero,.section{padding-left:max(5%,calc((100% - 1440px)/2));padding-right:max(5%,calc((100% - 1440px)/2))}}@media(max-width:760px){.header{height:85px;gap:20px;justify-content:space-between}.header .logo{font-size:37px}.header-note,.edition{display:none}nav{gap:20px;font-size:14px}.hero{padding-top:35px}.hero h1{font-size:clamp(48px,10vw,76px);letter-spacing:-3px;margin:35px 0}.hero-bottom{align-items:flex-start;gap:30px;flex-direction:column}.hero-bottom p{font-size:16px}.circle-link b{width:43px;height:43px}.landscape{height:275px;margin:0 10px}.image-caption{font-size:10px;letter-spacing:1px}.section{padding:60px 6%}.about{grid-template-columns:1fr;gap:20px}.about-copy{gap:20px;grid-template-columns:1fr}.portfolio-heading{grid-template-columns:1fr}.portfolio-heading>p:last-child{justify-self:start;margin-top:20px}.grid{grid-template-columns:1fr;margin-top:30px}.card{min-height:420px;padding:25px}.brand{height:190px}.petit-brand{font-size:44px}.skars-brand{font-size:29px}.closing h2{letter-spacing:-1.5px}footer{flex-wrap:wrap}footer p{order:3;width:100%;margin:0}.eyebrow{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.credit{padding:0 5% 25px;font-size:12px;color:#5b6b63}.credit a{text-decoration:underline}

/* Original brand artwork, with original proportions and colors. */
.logo{display:inline-flex;align-items:center;flex-shrink:0;line-height:1}
.logo img{display:block;width:184px;height:auto}
footer .logo img{width:150px}
.brand img{display:block;max-width:100%;height:auto;object-fit:contain}
.aha-brand img{width:280px;max-height:145px}
.petit-brand img{width:350px;max-height:175px}
@media(max-width:760px){.header .logo img{width:132px}.header{gap:16px}nav{gap:16px}.aha-brand img{width:250px}.petit-brand img{width:310px}}
@media(max-width:360px){.header .logo img{width:110px}nav{font-size:13px;gap:12px}}

/* Investment & Venture Studio */
.header{justify-content:space-between;gap:35px}.header nav{gap:28px}.hero h1{font-size:clamp(52px,7vw,106px);letter-spacing:-5px}.hero-bottom p{max-width:660px}.section-intro{display:grid;grid-template-columns:1fr 1fr;align-items:end}.section-intro .eyebrow{grid-column:1/-1;margin:0 0 30px}.section-intro h2{margin:0}.section-intro>p:last-child{justify-self:end;color:var(--muted);margin:0}.services{background:#eaf0e3}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;margin-top:55px}.service-grid article{border-top:1px solid #aebba6;padding-top:25px}.service-number{font-size:14px;color:#57664e}.service-grid h3{font-family:'Manrope',sans-serif;font-size:29px;font-weight:500;letter-spacing:-1px;line-height:1.25;margin:28px 0 22px}.service-grid p{font-size:16px;color:#495b4c}.service-grid ul{padding:22px 0 0;list-style:none;border-top:1px solid #c4cfbb;margin-top:25px}.service-grid li{font-size:14px;margin:12px 0;padding-left:17px;position:relative}.service-grid li:before{content:'–';position:absolute;left:0}.card p{font-size:16px}.advisory{display:grid;grid-template-columns:1fr 1fr;gap:9%;border-top:1px solid #cbd2c7}.advisory .eyebrow{margin:0 0 32px}.advisory h2{font-size:clamp(35px,3.5vw,52px)}.advisory h2 em{font-family:Georgia,serif;font-weight:400}.advisory p{color:var(--muted)}.advisory .advisory-lead{font-size:21px;color:var(--green)}.advisory-rows article{display:flex;gap:24px;border-top:1px solid #cbd2c7;padding:28px 0}.advisory-rows article>span{font-size:13px;padding-top:5px;color:var(--muted)}.advisory-rows h3{font-size:23px;letter-spacing:-.6px;font-weight:500;margin:0 0 10px}.advisory-rows p{margin:0;font-size:16px}.closing{display:grid;grid-template-columns:1.6fr 1fr;gap:45px;align-items:end}.closing h2{font-size:clamp(38px,4vw,59px)}.closing .contact-intro{font-size:16px;color:#c4d3c6;max-width:650px}.contact-person{justify-self:end;min-width:245px;padding-bottom:18px}.contact-person p{font-size:22px;margin:0 0 25px}.contact-person p span{display:block;font-size:14px;color:#c4d3c6;margin-top:5px}.contact-person a{display:flex;justify-content:space-between;gap:30px;font-size:16px;border-bottom:1px solid #91a894;padding-bottom:15px}.contact-person a:hover{color:var(--lime)}
@media(max-width:1000px){.header nav{gap:18px;font-size:14px}.service-grid{gap:25px}.closing{grid-template-columns:1fr}.contact-person{justify-self:start}.hero h1{letter-spacing:-3px}}
@media(max-width:760px){.header{height:auto;min-height:100px;flex-wrap:wrap;padding:23px 0 18px;gap:22px}.header nav{width:100%;flex-wrap:wrap;gap:12px 21px;font-size:14px}.hero h1{font-size:clamp(43px,8.5vw,65px);letter-spacing:-2.5px}.hero .eyebrow{letter-spacing:1.2px}.desktop-break{display:none}.section-intro{grid-template-columns:1fr}.section-intro>p:last-child{justify-self:start;margin-top:24px}.service-grid{grid-template-columns:1fr;gap:30px;margin-top:35px}.service-grid h3{margin:18px 0;font-size:30px}.service-grid h3 br{display:none}.service-grid ul{padding-top:12px}.advisory{grid-template-columns:1fr;gap:30px}.closing{gap:25px}.contact-person{padding-bottom:0}.closing .contact-intro br{display:none}}

.hemli{grid-column:1/-1;background:#e2e8db;display:grid;grid-template-columns:1fr 1fr;column-gap:60px;min-height:315px}.hemli .card-top{grid-column:1/-1}.hemli-brand{font-family:'Manrope',sans-serif;font-size:61px;font-weight:500;letter-spacing:5px;height:220px}.hemli-brand>span{font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:4px}.hemli .card-bottom{align-self:center}.hemli .card-bottom p{max-width:590px}@media(max-width:760px){.hemli{display:flex;min-height:430px;gap:0}.hemli-brand{height:190px;font-size:52px}.hemli .card-bottom{align-self:stretch}}

/* Photographic portfolio: property, experiences and brands. */
.portfolio-collage{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;margin:0 20px;height:390px}.portfolio-collage figure{margin:0;position:relative;overflow:hidden;min-width:0;background:#273f35}.portfolio-collage img{display:block;width:100%;height:100%;object-fit:cover}.portfolio-collage figure:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(8,27,23,.8))}.portfolio-collage figcaption{position:absolute;bottom:26px;left:26px;right:20px;z-index:1;color:#fff}.portfolio-collage figcaption span{display:block;font-size:12px;letter-spacing:1.8px;margin-bottom:12px}.portfolio-collage figcaption strong{display:block;font-family:'Manrope',sans-serif;font-weight:500;font-size:22px;line-height:1.3;letter-spacing:-.5px}@media(max-width:760px){.portfolio-collage{grid-template-columns:1fr 1fr;height:auto;gap:10px;margin:0 10px}.portfolio-collage .collage-property{grid-column:1/-1;height:260px}.portfolio-collage .collage-events,.portfolio-collage .collage-wine{height:230px}.portfolio-collage figcaption{bottom:18px;left:16px;right:12px}.portfolio-collage figcaption strong{font-size:18px}.portfolio-collage figcaption span{font-size:11px;letter-spacing:1px}}

.collage-wine img{object-position:46% center}.collage-events img{object-position:50% 65%}

/* One continuous photographic field with feathered transitions. */
.portfolio-collage{display:block;position:relative;height:420px;isolation:isolate;overflow:hidden;background:#273f35}
.portfolio-collage figure{position:absolute;top:0;height:100%;width:40%;background:transparent;overflow:visible}
.portfolio-collage .collage-property{left:0;z-index:1}.portfolio-collage .collage-events{left:30%;z-index:2}.portfolio-collage .collage-wine{left:60%;z-index:3}
.portfolio-collage figure:after{display:none}.portfolio-collage:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(7,24,20,.72));z-index:4;pointer-events:none}
.portfolio-collage .collage-events img,.portfolio-collage .collage-wine img{-webkit-mask-image:linear-gradient(to right,transparent,#000 25%);mask-image:linear-gradient(to right,transparent,#000 25%)}
.portfolio-collage .collage-property img{object-position:42% center}.portfolio-collage .collage-events img{object-position:50% center}.portfolio-collage .collage-wine img{object-position:55% center}
.portfolio-collage figcaption{z-index:5;bottom:28px;left:8%}.portfolio-collage .collage-events figcaption,.portfolio-collage .collage-wine figcaption{left:28%}
@media(max-width:760px){.portfolio-collage{height:680px}.portfolio-collage figure{width:100%!important;height:260px!important;left:0!important}.portfolio-collage .collage-property{top:0}.portfolio-collage .collage-events{top:210px}.portfolio-collage .collage-wine{top:420px}.portfolio-collage .collage-events img,.portfolio-collage .collage-wine img{-webkit-mask-image:linear-gradient(to bottom,transparent,#000 50px);mask-image:linear-gradient(to bottom,transparent,#000 50px)}.portfolio-collage figcaption,.portfolio-collage .collage-events figcaption,.portfolio-collage .collage-wine figcaption{left:20px;bottom:55px;text-shadow:0 1px 8px #000}.portfolio-collage .collage-wine figcaption{bottom:24px}.portfolio-collage figcaption strong{font-size:20px}.portfolio-collage:after{inset:80% 0 0}}

/* Clear lime section labels and bright photo captions. */
.eyebrow{display:table;width:fit-content;max-width:100%;background:#12362e;color:#d9ef91!important;font-size:13px;font-weight:700;letter-spacing:1.5px;line-height:1.5;padding:9px 13px;align-self:start;justify-self:start;opacity:1}
.closing .eyebrow{background:#d9ef91;color:#12362e!important}
.portfolio-collage .collage-property,.portfolio-collage .collage-events,.portfolio-collage .collage-wine{z-index:auto}
.portfolio-collage img{position:relative;z-index:1}
.portfolio-collage:after{z-index:2;background:linear-gradient(transparent,rgba(7,24,20,.82))}
.portfolio-collage figcaption{z-index:3;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.85)}
.portfolio-collage figcaption span{color:#d9ef91;font-size:14px;font-weight:700;letter-spacing:1.6px}
.portfolio-collage figcaption strong{color:#fff;font-weight:700;font-size:24px}
@media(max-width:760px){.eyebrow{font-size:12px;letter-spacing:1.2px}.portfolio-collage figcaption strong{font-size:21px}.portfolio-collage figcaption span{font-size:13px}.portfolio-collage figure:after{display:block;z-index:2;inset:50% 0 0;background:linear-gradient(transparent,rgba(7,24,20,.6));pointer-events:none}}

/* Mellow corporate palette: forest green, ivory and muted champagne. */
:root{--green:#103d31;--paper:#f5f4ef;--lime:#d5c69c;--muted:#52655b;--forest:#103d31;--forest-deep:#092b23;--ivory:#f5f4ef;--champagne:#d5c69c}
body{background:var(--forest-deep);color:var(--ivory)}
.header{border-color:#476157;color:var(--ivory)}
.header .logo img,footer .logo img{filter:brightness(0) invert(1)}
.hero{background:var(--forest-deep);color:var(--ivory)}
.hero h1 em{color:var(--champagne)}
.hero-bottom p{color:#d4dfd8}.edition{color:#d4dfd8;opacity:1}
.circle-link b{background:var(--champagne);color:var(--forest-deep)}
.eyebrow{background:transparent;color:var(--champagne)!important;border:1px solid #6c7b61;border-left:3px solid var(--champagne);padding:8px 13px;font-size:13px;letter-spacing:1.6px}
.about{background:var(--ivory);color:var(--forest);border-color:#d5dcd4}.about .eyebrow{background:var(--forest);border-color:var(--forest)}
.about-copy p{color:#52655b}
.services{background:var(--forest);color:var(--ivory)}
.section-intro>p:last-child,.service-grid p{color:#d4dfd8}.service-number{color:var(--champagne)}
.service-grid article,.service-grid ul{border-color:#527065}.service-grid li{color:#e3e9e3}
.portfolio{background:#e9ede7;color:var(--forest)}
.portfolio-heading .eyebrow{background:var(--forest);border-color:var(--forest)}
.portfolio-heading>p:last-child{color:#52655b}
.card.aha,.card.petit,.card.skars,.card.viking,.card.hemli{background:var(--forest);color:var(--ivory)}
.card-top{color:var(--champagne);opacity:1}.card-bottom{border-color:#668074}.card p{color:#dce5de;opacity:1}.card a{color:var(--champagne)}
.aha-brand img,.petit-brand img{filter:brightness(0) invert(1)}
.brand>span{color:var(--champagne)}
.advisory{background:var(--forest-deep);color:var(--ivory);border-color:#476157}
.advisory p,.advisory-rows p{color:#cbd9d0}.advisory .advisory-lead{color:var(--ivory)}
.advisory-rows article{border-color:#476157}.advisory-rows article>span{color:var(--champagne)}
.closing{background:var(--forest);color:var(--ivory);border-top:1px solid #476157}
.closing .eyebrow{background:transparent;color:var(--champagne)!important;border-color:#6c7b61}
.closing .contact-intro,.contact-person p span{color:#d4dfd8}.contact-person a{color:var(--ivory);border-color:#8c9a7e}.contact-person a:hover{color:var(--champagne)}
footer{background:var(--forest-deep);color:var(--ivory)}footer p{color:#cbd9d0}
.portfolio-collage figcaption span{color:var(--champagne)}
a:focus-visible{outline-color:#d5c69c}.about a:focus-visible,.portfolio a:focus-visible{outline-color:#103d31}

/* Compact mobile navigation; desktop navigation retains its original layout. */
.menu-toggle{display:none}
@media(max-width:760px){
 .header.menu-ready{position:relative;min-height:86px;height:auto;padding:20px 0;gap:0;align-items:center;flex-wrap:wrap}
 .menu-ready .menu-toggle{display:flex;position:relative;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:46px;height:46px;padding:10px;background:transparent;border:1px solid #668074;border-radius:3px;color:var(--champagne);cursor:pointer;margin-left:auto}
 .menu-toggle span{display:block;width:22px;height:2px;background:currentColor;transition:transform .18s,opacity .18s}
 .menu-toggle:focus-visible{outline:2px solid var(--champagne);outline-offset:4px}
 .menu-ready.menu-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
 .menu-ready.menu-open .menu-toggle span:nth-child(2){opacity:0}
 .menu-ready.menu-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .header.menu-ready nav{display:none;width:100%;flex-basis:100%;flex-direction:column;gap:0;margin-top:20px;padding-top:8px;border-top:1px solid #476157}
 .header.menu-ready.menu-open nav{display:flex}
 .header.menu-ready nav a{display:block;padding:14px 2px;font-size:17px;line-height:1.4;border-bottom:1px solid #29483e}
 .header.menu-ready nav a:last-child{border-bottom:0}
}

/* Keep mobile links free of decorative arrows. */
@media(max-width:760px){.link-arrow{display:none!important}}
