.portfolio-hero{background:var(--ink);color:white;padding-block:62px 66px}
.intro-grid{display:grid;grid-template-columns:1.22fr 1fr;gap:76px;align-items:center}
.intro-copy .eyebrow{color:#deccad;font-size:.875rem;letter-spacing:.11em;margin-bottom:26px}
.intro-copy h1{font-size:clamp(2.6rem,4.6vw,4.6rem);line-height:1.14;letter-spacing:-.04em;margin-bottom:26px}
.intro-copy h1 em{color:#e7d4b7;letter-spacing:-.045em}
.intro-description{max-width:460px;font-size:1.08rem;line-height:1.85;color:#d1dce1;margin-bottom:28px}
.intro-copy .button{background:#e7d4b7;font-size:.9375rem;gap:34px}
.intro-copy .button:hover{background:white}
.place-image{position:relative;margin:0;height:430px;overflow:hidden;background:#26404b}
.place-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.place-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#081922e6,transparent 60%);pointer-events:none}
.place-image figcaption{position:absolute;bottom:28px;left:28px;right:28px;display:flex;flex-direction:column;z-index:1;line-height:1.5;gap:2px}
.place-image figcaption span:first-child{font-size:.75rem;letter-spacing:.12em;color:#ede0ca;margin-bottom:8px}
.place-image figcaption strong{font-family:var(--display);font-weight:400;font-size:2rem}
.place-image figcaption span:last-child{font-size:.875rem;color:#dce5e8}
.company-section{padding-block:80px 64px;scroll-margin-top:26px}
.company-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;align-items:end;margin-bottom:40px}
.company-heading h2{font-size:clamp(2.25rem,3.3vw,3.15rem)}
.company-heading>p{color:var(--muted);max-width:315px;justify-self:end;margin-bottom:0;line-height:1.85}
.company-list{list-style:none;margin:0;padding:0;border-top:1px solid #c4ced2}
.company-row{display:grid;grid-template-columns:28px 1.05fr 1.3fr auto;gap:28px;align-items:center;border-bottom:1px solid var(--line);padding-block:30px}
.company-number{font-size:.875rem;color:#73828a;align-self:start;padding-top:3px}
.company-category{font-size:.75rem;letter-spacing:.1em;color:var(--muted);margin-bottom:6px}
.company-name h3{font-family:var(--display);font-weight:400;font-size:1.7rem;letter-spacing:-.025em;line-height:1.2;margin:0}
.company-description{font-size:1rem;line-height:1.75;color:var(--muted);margin:0;max-width:375px}
.visit-link{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:48px;font-size:.875rem;border-bottom:1px solid #95a5ad;padding-block:8px;white-space:nowrap}
.visit-link span[aria-hidden]{font-size:1.3rem;line-height:1}
.visit-link:hover{color:#795421;border-color:#795421}
.ownership-note{font-size:.875rem;line-height:1.75;color:var(--muted);margin:25px 0 0;max-width:760px}
.owner-section{background:var(--soft);padding-block:64px}
.owner-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:start}
.owner-grid h2{font-size:clamp(2.5rem,3.8vw,3.6rem);font-family:var(--display);letter-spacing:-.035em}
.owner-grid .eyebrow{font-size:.875rem;color:var(--muted);margin-bottom:18px}
.owner-role{font-size:.9375rem;color:var(--muted);margin:18px 0 0}
.owner-description p{font-size:1.05rem;color:var(--muted);line-height:1.9;margin-bottom:16px}
.owner-description p:last-child{margin:0}
.portfolio-footer{padding-block:32px;background:var(--ink);color:#e2e8eb}
.portfolio-footer>.wrap{display:flex;gap:28px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.portfolio-footer p,.portfolio-footer>.wrap>a:last-child{font-size:.875rem;margin:0;color:#c5d2d9}
.portfolio-footer .brand-mark{font-size:2.5rem}
.portfolio-footer .brand-name{font-size:.875rem}
.portfolio-footer a:last-child:hover{text-decoration:underline;text-underline-offset:5px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px){.intro-grid{gap:44px}.place-image{height:390px}.company-row{grid-template-columns:22px 1fr 1.25fr;gap:24px}.visit-link{grid-column:3;justify-self:start}.company-number{grid-row:1 / 3}.company-name{align-self:start}.company-description{max-width:none}.company-heading,.owner-grid{gap:48px}}
@media(max-width:800px){.portfolio-hero{padding-block:40px}.intro-grid{grid-template-columns:1fr;gap:32px}.intro-copy h1{font-size:clamp(2.7rem,7vw,4rem)}.intro-description{max-width:550px}.place-image{height:280px}.place-image img{object-position:center 58%}.company-heading{grid-template-columns:1fr;gap:22px}.company-heading>p{justify-self:start;max-width:500px}.company-section{padding-block:52px}.owner-grid{grid-template-columns:1fr;gap:28px}}
@media(max-width:600px){.site-header nav{gap:12px 20px;font-size:.875rem}.company-row{grid-template-columns:20px 1fr;gap:12px 16px;padding-block:26px}.company-number{grid-row:1 / 4}.company-name,.company-description,.visit-link{grid-column:2}.company-name h3{font-size:1.7rem}.visit-link{margin-top:3px;justify-self:start}.intro-copy .eyebrow{font-size:.75rem;letter-spacing:.07em}.intro-copy h1{font-size:clamp(2.45rem,8.5vw,3.4rem)}.company-heading h2{font-size:2.2rem}.portfolio-footer>.wrap{align-items:start}.portfolio-footer p{flex-basis:100%;order:3}.owner-section{padding-block:44px}.place-image{height:260px}.place-image figcaption{left:20px;bottom:20px}}

.company-name{min-width:0}.company-name h3{overflow-wrap:anywhere}
