@charset "UTF-8";
:root{--paper:#f4f2ed;--ink:#252c29;--green:#234b3c;--muted:#686d67;--line:#d8dad2;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--shell:1328px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:105px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button{color:inherit}
button:not(:disabled){cursor:pointer}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-family:var(--serif);font-weight:400}
h1,h2{letter-spacing:-.045em;line-height:1.06}
h2{font-size:clamp(40px,4.3vw,62px)}
h3{line-height:1.2}
em{font-weight:400;color:var(--green)}
p{color:var(--muted)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:6px}
::selection{background:#ced8c9;color:var(--ink)}
.shell{width:calc(100% - 112px);max-width:var(--shell);margin-inline:auto}
.section{padding-top:108px;padding-bottom:106px}
.eyebrow{font-family:var(--sans);font-size:10px;line-height:1.5;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:48px}
.section-heading h2{margin-top:23px}
.section-heading-copy{max-width:355px;font-size:15px;line-height:1.75;padding-bottom:5px}
.section-heading-copy p{margin-bottom:21px}
.text-link{display:inline-flex;align-items:center;gap:23px;font-size:12px;font-weight:500;border-bottom:1px solid currentColor;padding-bottom:5px;color:var(--ink)}
.text-link span{font-size:18px;line-height:1}
.text-link:hover{color:var(--green)}
.skip-link{position:fixed;z-index:100;top:-80px;left:20px;padding:12px 20px;background:var(--ink);color:white}
.skip-link:focus{top:12px}
.site-header{position:relative;z-index:20;background:var(--paper)}
.header-inner{height:106px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:17px;flex-shrink:0;font-size:13px;font-weight:600;letter-spacing:.13em}
.brand-mark{font-family:var(--serif);font-size:41px;font-weight:400;letter-spacing:-.07em;line-height:1}
.site-nav{display:flex;align-items:center;gap:32px;font-size:12px}
.site-nav>a{padding-block:10px}
.site-nav>a:hover{color:var(--green)}
.site-nav .nav-contact{border:1px solid #b5bdb3;padding:10px 18px;margin-left:13px;display:inline-flex;gap:27px}
.nav-contact span{font-size:17px;line-height:1}
.nav-toggle{display:none}
.hero{display:grid;grid-template-columns:1fr 1.13fr;gap:60px;padding-top:53px;padding-bottom:41px}
.hero-copy{padding-top:28px}
.hero .eyebrow{font-size:9px;letter-spacing:.125em;display:flex;align-items:center;gap:9px}
.status-dot{width:5px;height:5px;border-radius:50%;background:var(--green);display:inline-block}
.hero h1{font-size:clamp(65px,6.05vw,89px);margin-top:32px;line-height:1.04;letter-spacing:-.06em}
.hero h1 em{display:inline-block;margin-top:-3px}
.hero-intro{font-size:17px;line-height:1.55;letter-spacing:-.015em;color:var(--ink);margin-top:26px}
.hero-description{font-size:13px;max-width:337px;line-height:1.8;margin-top:17px}
.button{min-height:48px;display:inline-flex;align-items:center;gap:45px;justify-content:space-between;padding:12px 20px;font-size:12px}
.button-dark{background:var(--green);color:#fff}
.button-dark:hover{background:#15382b}
.button span{font-size:19px;line-height:1}
.hero .button{margin-top:27px}
.hero-location{display:flex;align-items:center;gap:9px;font-size:8px;letter-spacing:.09em;color:var(--muted);margin-top:46px}
.location-symbol{font-size:19px;line-height:1}
.small-divider{padding:0 6px;color:#a9ada4}
.hero-figure{min-width:0}
.hero-image-wrap{position:relative;height:640px;overflow:hidden;background:#d6d6c9}
.hero-image{height:100%;width:100%;object-fit:cover}
.image-label{position:absolute;top:22px;left:23px;color:white;font-size:8px;letter-spacing:.14em;background:rgba(25,35,26,.6);padding:7px 9px}
.image-corner{position:absolute;bottom:24px;right:24px;width:45px;height:45px;display:grid;place-items:center;background:var(--paper);font-size:22px;border-radius:50%}
.hero-figure figcaption{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.1em;padding-top:13px;color:var(--muted)}
.focus-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:26px}
.focus-strip>span{font-size:8px;letter-spacing:.12em;color:var(--muted)}
.focus-strip p{font-family:var(--serif);font-size:19px;color:var(--ink)}
.focus-strip i{font-size:13px;font-style:normal;color:#737c6c;margin:0 21px}
.project-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:start}
.project-grid .project-card:nth-child(2){margin-top:78px}
.project-image{height:385px;position:relative;overflow:hidden;background:#dddcd3}
.project-card:nth-child(2) .project-image{height:330px}
.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.project-card:hover img{transform:scale(1.025)}
.project-open{position:absolute;bottom:18px;right:18px;background:var(--paper);width:38px;height:38px;display:grid;place-items:center;font-size:20px}
.project-caption{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin-top:21px}
.project-caption .eyebrow{font-size:9px;margin-bottom:7px}
.project-caption h3{font-size:29px;letter-spacing:-.04em}
.project-kind{font-size:9px;color:var(--muted);white-space:nowrap;padding-bottom:3px}
.services{display:grid;grid-template-columns:1fr 3fr;gap:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;margin-top:53px;align-items:center}
.services ul{display:grid;grid-template-columns:1fr 1fr;gap:9px 40px;list-style:none;margin:0;padding:0;font-size:13px}
.services li:before{content:'↗';color:#627b5d;margin-right:12px}
.work-note{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:24px}
.work-note p{max-width:550px;font-size:10px;line-height:1.7}
.work-note .text-link{white-space:nowrap;font-size:11px}
.about-section{--muted:#5f665f;background:#e7e9e0;padding-block:96px}
.about-grid{display:grid;grid-template-columns:.93fr 1fr;gap:100px;align-items:center}
.about-photo{position:relative;overflow:hidden;background:#000}
.about-photo>img{filter:grayscale(1)}
.portrait-caption{position:absolute;left:24px;right:24px;bottom:22px;display:flex;justify-content:space-between;color:#f3f2ed;font-size:8px;letter-spacing:.12em}
.about-copy h2{font-size:clamp(37px,3.5vw,51px);margin-top:25px;margin-bottom:29px}
.about-copy p:not(.eyebrow){font-size:13px;margin-bottom:16px;line-height:1.85}
.about-copy p.about-lead{font-size:18px;font-family:var(--serif);line-height:1.55;color:var(--ink);margin-bottom:22px}
.about-copy .text-link{margin-top:14px}
.venture-row{display:grid;grid-template-columns:45px 1.1fr 1fr 40px;gap:30px;align-items:center;padding:35px 0;border-top:1px solid var(--line);transition:background .2s}
.venture-row:last-child{border-bottom:1px solid var(--line)}
.venture-row:hover{background:#eeeee6}
.venture-number{align-self:start;font-size:10px;color:var(--muted);padding-top:6px}
.venture-name h3{font-size:33px;letter-spacing:-.035em}
.venture-name>span{display:block;font-size:8px;letter-spacing:.13em;color:var(--muted);margin-top:12px}
.venture-row p{max-width:340px;font-size:13px;line-height:1.75}
.venture-arrow{font-size:26px;justify-self:end}
.journal-section{background:#eeeee7}
.journal-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.journal-topic{border-top:1px solid #bfc6b9;padding-top:23px;display:flex;flex-direction:column;align-items:flex-start}
.journal-topic h3{font-size:28px;letter-spacing:-.03em;line-height:1.25;margin:21px 0 28px}
.journal-topic .text-link{margin-top:auto}
.contact-section{background:var(--green);color:var(--paper);padding:86px 0 95px}
.contact-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:100px;align-items:end}
.contact-section .eyebrow{color:#d3ddcf;font-size:9px}
.contact-section h2{margin-top:30px;font-size:clamp(55px,5.5vw,80px)}
.contact-section em{color:#c9d0b8}
.contact-copy{padding-bottom:8px}
.contact-copy>p{color:#d3ddcf;max-width:320px;font-size:14px;line-height:1.8}
.contact-email{display:inline-flex;font-size:clamp(18px,2.2vw,29px);letter-spacing:-.035em;gap:35px;padding-bottom:9px;border-bottom:1px solid #77927f;margin-top:27px}
.contact-email:hover{color:#d9e2c8}
.contact-copy p.contact-hint{font-size:10px;margin-top:17px}
.site-footer{padding-top:39px}
.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}
.footer-top{padding-bottom:33px}
.footer-top .brand{font-size:10px;gap:12px}
.footer-top .brand-mark{font-size:33px}
.footer-top p{font-size:11px}
.footer-social{display:flex;gap:23px;font-size:10px}
.footer-bottom{border-top:1px solid var(--line);padding:21px 0;font-size:9px;color:var(--muted)}
.footer-bottom>span:nth-child(2){font-size:8px;letter-spacing:.12em}
.footer-bottom a:hover,.footer-social a:hover{color:var(--green)}
@media(min-width:1600px){.hero{gap:95px}
.hero-image-wrap{height:680px}
.hero h1{font-size:94px}
.hero-description{font-size:14px;max-width:365px}
.hero-copy{padding-top:40px}
}
@media(max-width:1150px){.shell{width:calc(100% - 72px)}
.hero{gap:35px;grid-template-columns:1fr 1fr}
.hero h1{font-size:66px}
.hero-image-wrap{height:602px}
.hero-description{font-size:12px}
.site-nav{gap:21px}
.site-nav .nav-contact{margin-left:0}
.hero-location{font-size:7px;gap:5px}
.focus-strip p{font-size:17px}
.focus-strip i{margin-inline:12px}
.about-grid{gap:55px}
.section{padding-block:85px}
.project-caption{align-items:start;flex-direction:column}
.project-caption h3{font-size:26px}
.project-image{height:320px}
.project-card:nth-child(2) .project-image{height:285px}
.contact-grid{gap:55px}
.venture-row{grid-template-columns:30px 1fr 1fr 30px;gap:20px}
.venture-name h3{font-size:29px}
}
@media(max-width:800px){html{scroll-padding-top:25px}
.shell{width:calc(100% - 44px)}
.header-inner{height:83px}
.brand{font-size:11px;gap:12px}
.brand-mark{font-size:36px}
.site-nav{gap:18px;font-size:11px}
.site-nav .nav-contact{padding:8px 12px;gap:14px}
.site-nav>a[href='#ventures']{display:none}
.hero{gap:25px;padding-top:30px}
.hero-copy{padding-top:10px}
.hero .eyebrow{font-size:7px;letter-spacing:.08em;gap:5px}
.hero h1{font-size:56px;margin-top:28px}
.hero-intro{font-size:15px;margin-top:20px}
.hero-description{font-size:12px;line-height:1.7}
.hero-image-wrap{height:560px}
.hero .button{gap:25px;margin-top:22px}
.hero-location{flex-wrap:wrap;font-size:7px;margin-top:30px}
.hero-figure figcaption{font-size:7px}
.hero-figure figcaption span:nth-child(2){display:none}
.image-label{font-size:7px;left:15px;top:15px}
.focus-strip{align-items:flex-start;flex-direction:column;gap:8px;padding-block:20px}
.focus-strip p{font-size:19px}
.section-heading{gap:30px}
.section-heading-copy{max-width:290px;font-size:13px}
.section-heading h2{font-size:44px}
.project-grid{gap:22px}
.project-image{height:285px}
.project-card:nth-child(2) .project-image{height:245px}
.project-caption h3{font-size:23px}
.services{grid-template-columns:1fr 2.5fr}
.services ul{font-size:11px;gap:9px 12px}
.services>.eyebrow{font-size:8px}
.work-note p{max-width:350px}
.about-section{padding-block:70px}
.about-grid{gap:36px;grid-template-columns:.85fr 1fr}
.about-copy h2{font-size:35px}
.about-copy p:not(.eyebrow){font-size:12px}
.about-copy p.about-lead{font-size:17px}
.portrait-caption{font-size:7px;left:15px;right:15px}
.portrait-caption span:last-child{display:none}
.venture-row{grid-template-columns:22px 1fr 1fr 25px;gap:15px}
.venture-name h3{font-size:25px}
.venture-row p{font-size:12px}
.journal-picks{gap:22px}
.journal-topic h3{font-size:25px}
.contact-grid{gap:35px}
.contact-section h2{font-size:57px}
.contact-copy>p{font-size:12px}
.contact-email{font-size:21px;gap:15px}
.footer-top p{display:none}
}
@media(max-width:600px){.shell{width:calc(100% - 40px)}
.section{padding-block:66px}
.header-inner{height:auto;min-height:79px;flex-wrap:wrap;gap:0}
.brand{font-size:10px}
.site-nav{width:100%;justify-content:space-between;padding:0 0 17px;gap:10px}
.site-nav>a[href='#ventures']{display:block}
.site-nav .nav-contact{margin-left:0;padding:0;border:0}
.site-nav .nav-contact span{display:none}
.js-ready .nav-toggle{display:inline-flex;border:0;background:none;padding:12px 0 12px 20px;gap:18px;font-size:11px;align-items:center}
.nav-toggle span{font-size:22px}
.js-ready .site-nav{display:none}
.js-ready .site-nav.is-open{display:flex;flex-direction:column;align-items:stretch;padding:6px 0 18px;gap:0}
.js-ready .site-nav a,.js-ready .site-nav .nav-contact{padding:12px 0;font-size:14px}
.js-ready .site-nav .nav-contact{border-top:1px solid var(--line);margin-top:6px}
.hero{grid-template-columns:1fr;gap:31px;padding-top:31px;padding-bottom:28px}
.hero-copy{padding-top:5px}
.hero .eyebrow{font-size:8px;letter-spacing:.11em}
.hero h1{font-size:clamp(58px,14.5vw,82px);margin-top:28px}
.hero h1 br:nth-of-type(2){display:none}
.hero h1 em:before{content:' '}
.hero-intro{font-size:16px;margin-top:22px}
.hero-intro br{display:block}
.hero-description{font-size:13px;max-width:370px;margin-top:14px}
.hero .button{font-size:12px;min-height:47px;gap:38px;margin-top:23px}
.hero-location{margin-top:26px;font-size:7px;gap:7px}
.hero-image-wrap{height:460px}
.hero-figure figcaption{font-size:7px}
.hero-figure figcaption span:nth-child(2){display:block}
.image-label{left:18px;top:18px;font-size:7px}
.image-corner{width:38px;height:38px;right:18px;bottom:18px}
.focus-strip p{font-size:16px;line-height:1.7}
.focus-strip i{margin:0 7px;font-size:11px}
.focus-strip>span{font-size:7px}
.section-heading{display:block;margin-bottom:31px}
.section-heading .eyebrow{font-size:9px}
.section-heading h2{font-size:45px;margin-top:19px}
.section-heading-copy{max-width:100%;margin-top:24px;font-size:13px;padding:0}
.section-heading-copy p{margin-bottom:18px}
.project-grid{grid-template-columns:1fr;gap:31px}
.project-grid .project-card:nth-child(2){margin-top:0}
.project-image,.project-card:nth-child(2) .project-image{height:310px}
.project-caption{flex-direction:row;align-items:flex-end;margin-top:17px}
.project-caption h3{font-size:26px}
.project-kind{font-size:8px;max-width:70px;white-space:normal;text-align:right}
.services{display:block;margin-top:32px;padding-block:23px}
.services>.eyebrow{font-size:8px;margin-bottom:17px}
.services ul{font-size:11px;gap:10px 5px}
.services li:before{margin-right:6px}
.work-note{flex-direction:column;align-items:flex-start;gap:16px;margin-top:18px}
.work-note p{font-size:10px}
.about-section{padding-block:58px}
.about-grid{display:flex;flex-direction:column-reverse;gap:35px}
.about-copy h2{font-size:43px;margin-top:18px;margin-bottom:22px}
.about-copy p.about-lead{font-size:19px}
.about-copy p:not(.eyebrow){font-size:13px}
.about-photo{width:100%}
.portrait-caption{left:20px;right:20px;font-size:8px}
.portrait-caption span:last-child{display:block}
.venture-row{grid-template-columns:21px 1fr 21px;gap:13px;padding-block:26px}
.venture-number{font-size:9px}
.venture-name h3{font-size:29px}
.venture-name>span{font-size:7px;margin-top:9px}
.venture-row p{grid-column:2;grid-row:2;max-width:100%;font-size:12px}
.venture-arrow{grid-column:3;grid-row:1}
.journal-picks{grid-template-columns:1fr;gap:30px}
.journal-topic h3{font-size:29px;margin:15px 0 24px;max-width:340px}
.contact-section{padding:58px 0}
.contact-grid{grid-template-columns:1fr;gap:29px}
.contact-section .eyebrow{font-size:8px}
.contact-section h2{font-size:63px;margin-top:23px}
.contact-copy>p{font-size:13px}
.contact-email{font-size:26px;gap:28px;margin-top:22px}
.contact-copy p.contact-hint{font-size:10px}
.site-footer{padding-top:30px}
.footer-top{gap:25px;padding-bottom:27px}
.footer-social{gap:13px;font-size:9px}
.footer-bottom{font-size:8px;padding-block:18px}
.footer-bottom>span:nth-child(2){display:none}
}
@media(max-width:370px){.shell{width:calc(100% - 32px)}
.hero h1{font-size:55px}
.hero-image-wrap{height:400px}
.hero-location{letter-spacing:.03em}
.focus-strip p{font-size:14px}
.focus-strip i{margin-inline:5px}
.project-caption h3{font-size:24px}
.contact-email{font-size:23px}
.services ul{grid-template-columns:1fr}
.footer-top .brand{font-size:9px;gap:9px}
.footer-social{gap:10px;font-size:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*::before,*::after{animation:none!important;transition:none!important}
}
/* Keep essential copy comfortable to read and focus visible on dark sections. */
.hero-description{font-size:14px;max-width:365px}
.about-copy p:not(.eyebrow){font-size:14px}
.venture-row p{font-size:14px}
.work-note p{font-size:11px}
.project-kind{font-size:10px}
.contact-section a:focus-visible{outline-color:var(--paper)}
@media(max-width:600px){.hero-description,.about-copy p:not(.eyebrow),.venture-row p{font-size:14px}
.hero .eyebrow{font-size:9px}
.project-caption .eyebrow{font-size:10px}
.hero-location{font-size:8px;letter-spacing:.02em}
.services ul{font-size:12px}
.contact-copy>p{font-size:14px}
.footer-social{font-size:10px}
}

/* Shared directory navigation and complete profile links. */
.site-nav{font-size:14px;gap:25px}
.site-nav a[aria-current="page"]{color:var(--green);text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px}
.footer-directory{padding:50px 0 0}
.footer-identity{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:38px;border-bottom:1px solid var(--line)}
.footer-identity p,.footer-identity>a:last-child{font-size:14px}
.footer-directory-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr;gap:40px;padding:40px 0 45px}
.footer-directory-grid h2{font-family:var(--sans);font-size:12px;letter-spacing:.09em;text-transform:uppercase;line-height:1.5;margin:0 0 20px;color:var(--muted)}
.footer-directory-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.footer-directory-grid a{display:inline-block;font-size:14px;padding:3px 0;line-height:1.5}
.footer-directory a:hover{text-decoration:underline;text-underline-offset:4px}
.footer-giving-note{font-size:14px;margin-top:27px;line-height:1.8}
.footer-giving-note a{max-width:240px;color:var(--green)}
.footer-directory-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;padding:23px 0;font-size:12px;color:var(--muted)}
.footer-directory-bottom>span:nth-child(2){font-size:12px;letter-spacing:.07em}
.giving-preview{background:#e7e9e0}
.giving-preview .section-heading-copy{font-size:16px;max-width:400px}
.giving-preview .eyebrow{font-size:12px}
.charity-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.charity-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:#fff;padding:24px 18px;min-height:176px;text-align:center;border:1px solid var(--line)}
.charity-logo img{width:160px;height:85px;object-fit:contain}
.charity-logo>span{font-size:12px;line-height:1.5;color:var(--muted)}
.charity-logo:hover{border-color:var(--green)}
.contribution-note{font-size:12px;line-height:1.8;max-width:850px;margin-top:24px}
.home-page-link{margin-top:25px}
@media(max-width:1100px){.site-nav{gap:18px}.site-nav .nav-contact{gap:16px;padding:10px 12px}.footer-directory-grid{gap:25px}.footer-identity p{display:none}}
@media(max-width:980px){
  .header-inner{height:auto;min-height:84px;flex-wrap:wrap}
  .site-nav{width:100%;flex-wrap:wrap;justify-content:space-between;padding-bottom:20px}
  .js-ready .nav-toggle{display:inline-flex;align-items:center;gap:18px;background:none;border:0;padding:14px 0 14px 24px;font-size:14px}
  .nav-toggle span{font-size:24px}
  .js-ready .site-nav{display:none}
  .js-ready .site-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:5px 0 20px}
  .js-ready .site-nav>a,.js-ready .site-nav>.nav-contact{font-size:16px;padding:13px 0}
  .js-ready .site-nav>.nav-contact{border:0;border-top:1px solid var(--line);margin:7px 0 0;justify-content:space-between}
}
@media(max-width:700px){.footer-directory-grid{grid-template-columns:1fr 1fr;gap:34px 25px}.charity-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-identity{align-items:flex-start;flex-direction:column;gap:24px}.footer-directory-bottom{flex-wrap:wrap}.footer-directory-bottom>span:nth-child(2){display:none}}
@media(max-width:400px){.footer-directory-grid{gap:32px 16px}.footer-directory-grid a{font-size:14px;overflow-wrap:anywhere}.charity-logo{padding:20px 10px;min-height:165px}.charity-logo img{max-width:100%;height:75px}}

/* The source portrait includes a black lower band. Crop its visible composition,
   rather than stretching the full asset into a fixed-height container. */
.portrait-frame{position:relative;width:100%;height:auto;aspect-ratio:1 / 1.04;overflow:hidden;background:#000}
.portrait-frame>img{position:absolute;top:-3%;left:-40%;display:block;width:160%;max-width:none;height:auto}

.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:27px}
.hero .hero-actions .button{margin-top:0;gap:18px;font-size:14px}
.button-outline{border:1px solid var(--green);color:var(--green);background:transparent}
.button-outline:hover{background:var(--green);color:#fff}
@media(max-width:800px){.hero-actions{margin-top:22px}}
@media(max-width:600px){.hero-actions{flex-direction:column;align-items:stretch;max-width:350px;margin-top:23px}}

/* Instagram design portfolio */
.hero-figure figcaption{gap:14px;flex-wrap:wrap}
.hero-figure figcaption a:hover{text-decoration:underline;text-underline-offset:3px}
.instagram-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.instagram-project-grid .project-image,.instagram-project-grid .project-card:nth-child(2) .project-image{height:auto;aspect-ratio:4 / 5}
.instagram-project-grid .project-image img{object-position:center 50%}
.instagram-project .project-caption{align-items:flex-start;flex-direction:column;gap:9px}
.instagram-project .project-kind{max-width:none;white-space:normal;text-align:left;font-size:11px}
.design-source{display:inline-flex;align-items:center;gap:12px;font-size:12px;color:var(--green);margin-top:15px;border-bottom:1px solid var(--line);padding-bottom:3px}
.instagram-project:hover .design-source{border-color:var(--green)}
@media(max-width:600px){.instagram-project-grid{grid-template-columns:1fr}.instagram-project-grid .project-card:nth-child(2){margin-top:22px}}

/* Responsive images retain their full-resolution originals in images/designs. */
.responsive-design-picture{display:block;width:100%;height:100%}
.responsive-design-picture img{display:block;width:100%;height:100%;object-fit:cover}
.hero-image-wrap .responsive-design-picture img{object-position:center 56%}
