:root{
  --green:#3d751a;
  --gold:#f3cb0a;
  --ink:#171c13;
  --dark:#162114;
  --cream:#f8f7f1;
  --muted:#5a6154;
  --rule:#dcded2;
  --page:1240px;
  font-family:"Segoe UI",Arial,sans-serif;
  color:var(--ink);
  background:var(--cream);
  font-synthesis:none
}
*{
  box-sizing:border-box
}
html{
  scroll-behavior:smooth;
  scroll-padding-top:30px
}
body{
  margin:0
}
img{
  display:block;
  max-width:100%;
  height:auto
}
a{
  color:inherit;
  text-underline-offset:5px
}
p{
  line-height:1.7;
  margin:0 0 1.2rem
}
p:last-child{
  margin-bottom:0
}
h1,h2,h3{
  margin:0 0 1rem;
  font-weight:650;
  letter-spacing:-.045em;
  line-height:1.08;
  text-wrap:balance
}
h1{
  font-size:clamp(2.8rem,5.1vw,4.6rem)
}
h2{
  font-size:clamp(2rem,3.7vw,3.4rem)
}
h3{
  font-size:1.5rem;
  letter-spacing:-.03em;
  line-height:1.2
}
figure{
  margin:0
}
figcaption{
  font-size:.8rem;
  line-height:1.6;
  color:var(--muted);
  padding-top:14px
}
strong{
  font-weight:650
}
em{
  font-style:normal
}
.wrap{
  max-width:var(--page);
  margin:auto;
  padding-inline:40px
}
.eyebrow{
  text-transform:uppercase;
  font-size:.7rem;
  font-weight:700;
  letter-spacing:.16em;
  line-height:1.6;
  margin-bottom:1.5rem;
  color:var(--green)
}
.lead{
  font-size:1.2rem;
  line-height:1.7;
  color:var(--muted)
}
.section{
  padding-block:100px
}
.section-heading{
  max-width:740px;
  margin-bottom:48px
}
.section-heading>p:not(.eyebrow){
  max-width:590px;
  color:var(--muted)
}
.tinted{
  background:#eeefe6
}
.text-link{
  display:inline-block;
  font-size:.9rem;
  font-weight:650;
  text-decoration:none;
  border-bottom:1px solid var(--green);
  padding-bottom:8px
}
.text-link span{
  margin-left:18px
}
.actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  margin-top:30px
}
.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:25px;
  background:var(--gold);
  color:var(--ink);
  font-size:.85rem;
  font-weight:700;
  padding:17px 22px;
  border:1px solid transparent;
  border-radius:6px;
  line-height:1.25;
  text-decoration:none;
  white-space:nowrap;
  transition:background .15s,transform .15s
}
.button:hover{
  background:#ffdf3c;
  transform:translateY(-2px)
}
.button.secondary{
  background:transparent;
  border-color:currentColor
}
.button.secondary:hover{
  background:#ffffff12
}
.button span{
  font-size:1.1rem;
  font-weight:400
}
.skip-link{
  position:absolute;
  top:0;
  left:-10000px;
  z-index:5;
  padding:16px;
  background:white;
  color:black
}
.skip-link:focus{
  left:10px
}
a:focus-visible{
  outline:3px solid #4e92cc;
  outline-offset:6px
}
.masthead{
  border-top:4px solid var(--gold);
  background:#fff
}
.masthead-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  min-height:122px
}
.brand{
  width:278px;
  flex-shrink:0
}
.brand img{
  width:100%
}
.masthead nav{
  display:flex;
  gap:26px;
  align-items:center
}
.masthead nav a{
  font-size:.82rem;
  text-decoration:none;
  font-weight:600;
  white-space:nowrap
}
.masthead nav a:hover,.masthead nav a[aria-current]{
  color:var(--green)
}
.masthead .button{
  font-size:.78rem;
  padding:14px 18px;
  gap:15px
}
.hero{
  background:var(--dark);
  color:var(--cream);
  overflow:hidden
}
.hero-grid{
  display:grid;
  grid-template-columns:1.14fr 1fr;
  gap:64px;
  align-items:center;
  padding-top:62px;
  padding-bottom:62px
}
.hero-copy{
  padding-block:18px
}
.hero .eyebrow{
  color:#c8cdaf;
  font-size:.65rem;
  letter-spacing:.13em
}
.hero h1{
  font-weight:600;
  max-width:650px
}
.hero h1 em{
  color:var(--gold)
}
.hero .lead{
  color:#c9cebf;
  font-size:1.04rem;
  max-width:510px;
  line-height:1.8;
  margin-top:25px
}
.hero .button.secondary{
  border-color:#7e8975;
  color:#fff
}
.hero-note{
  font-size:.7rem;
  color:#b7c1ae;
  margin-top:28px
}
.hero-photo{
  position:relative;
  align-self:stretch;
  min-height:560px;
  border-radius:3px;
  overflow:hidden
}
.hero-photo>img{
  width:100%;
  height:100%;
  position:absolute;
  object-fit:cover;
  object-position:54% 40%
}
.hero-photo figcaption{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  padding:75px 24px 23px;
  background:linear-gradient(transparent,#10180ef0);
  color:#fff
}
.hero-photo figcaption strong{
  display:block;
  font-size:1.3rem;
  letter-spacing:-.03em;
  margin-bottom:8px
}
.hero-photo figcaption span{
  display:block;
  font-size:.67rem;
  color:#e0e5d8;
  line-height:1.6
}
.experience{
  padding:32px 0 38px;
  background:#eceedf;
  border-bottom:1px solid var(--rule)
}
.experience>.wrap>.eyebrow{
  margin-bottom:22px;
  color:#5e6852;
  font-size:.63rem
}
.experience-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr)
}
.experience-grid>div{
  padding-left:32px;
  border-left:1px solid #c7cbb8
}
.experience-grid>div:first-child{
  padding-left:0;
  border:0
}
.experience h2{
  font-size:1.5rem;
  letter-spacing:-.04em;
  margin-bottom:7px
}
.experience p:not(.eyebrow){
  font-size:.75rem;
  color:var(--muted)
}
.problem-section{
  padding-bottom:55px
}
.problem-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:100px;
  align-items:start
}
.problem-grid>div>p{
  max-width:520px
}
.problem-list article{
  display:flex;
  gap:24px;
  padding:25px 0;
  border-bottom:1px solid var(--rule)
}
.problem-list article:first-child{
  padding-top:0
}
.problem-list article>span{
  font-size:.7rem;
  color:var(--green);
  padding-top:5px
}
.problem-list h3{
  font-size:1.18rem;
  margin-bottom:10px
}
.problem-list p{
  font-size:.9rem;
  color:var(--muted);
  line-height:1.7
}
.services-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:42px
}
.services-grid article{
  border-top:2px solid var(--green);
  padding-top:25px;
  display:flex;
  flex-direction:column
}
.number{
  font-size:.62rem;
  color:var(--green);
  letter-spacing:.12em;
  font-weight:700;
  margin-bottom:24px
}
.services-grid h3{
  font-size:1.65rem;
  margin-bottom:22px
}
.services-grid article>p{
  color:var(--muted);
  font-size:.95rem;
  margin-bottom:26px
}
.deliverable{
  border-top:1px solid var(--rule);
  padding-top:18px;
  margin-top:auto
}
.deliverable>span{
  text-transform:uppercase;
  font-size:.58rem;
  letter-spacing:.14em;
  font-weight:700;
  color:var(--green)
}
.deliverable p{
  font-size:.85rem;
  margin-top:8px
}
.work-section{
  background:#1d281a;
  color:var(--cream)
}
.work-section .eyebrow{
  color:#d8d4aa
}
.heading-row{
  max-width:none;
  display:flex;
  justify-content:space-between;
  gap:40px;
  align-items:end;
  margin-bottom:20px
}
.heading-row h2{
  margin-bottom:0
}
.heading-row .text-link{
  white-space:nowrap;
  border-color:var(--gold);
  color:var(--gold);
  margin-bottom:9px
}
.work-intro{
  font-size:.9rem;
  color:#c2cbb9;
  max-width:640px;
  margin-bottom:44px
}
.work-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px
}
.work-card{
  background:#f8f7f1;
  color:var(--ink);
  border-radius:3px;
  overflow:hidden;
  display:flex;
  flex-direction:column
}
.card-copy{
  padding:28px;
  display:flex;
  flex-direction:column;
  flex:1
}
.card-copy .eyebrow{
  color:var(--green);
  font-size:.55rem;
  letter-spacing:.1em;
  margin-bottom:15px
}
.card-copy h3{
  font-size:1.48rem
}
.card-copy>p:not(.eyebrow){
  font-size:.85rem;
  color:var(--muted);
  margin-bottom:24px
}
.card-copy>a{
  font-size:.75rem;
  font-weight:650;
  text-decoration:none;
  margin-top:auto
}
.stat-visual,.product-visual,.work-card .garden-photo{
  height:188px;
  flex:none
}
.stat-visual{
  padding:30px 24px;
  background:#dce6d0;
  display:flex;
  flex-direction:column;
  justify-content:center
}
.stat-visual>span{
  font-size:.65rem;
  color:#456037
}
.stat-visual p{
  display:flex;
  gap:12px;
  align-items:center;
  margin:10px 0
}
.stat-visual strong{
  font-size:2.6rem;
  line-height:1;
  letter-spacing:-.055em
}
.stat-visual p>span{
  color:var(--green);
  font-size:1.3rem
}
.product-visual{
  display:flex;
  align-items:center;
  padding:19px;
  background:#e9eae2;
  overflow:hidden
}
.product-visual img{
  width:100%;
  box-shadow:0 8px 20px #10200d1c
}
.garden-photo{
  position:relative;
  overflow:hidden;
  background:#dce6d0
}
.garden-photo img{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center
}
.process-grid{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:28px
}
.process-grid li{
  border-top:1px solid #b9c3a6;
  padding-top:22px
}
.process-grid li>span{
  font-size:.75rem;
  color:var(--green);
  display:block;
  margin-bottom:20px
}
.process-grid h3{
  font-size:1.1rem
}
.process-grid p{
  font-size:.86rem;
  color:var(--muted)
}
.founder-grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  align-items:center;
  gap:90px
}
.founder-photo{
  width:100%;
  max-height:510px;
  object-fit:cover;
  object-position:center 28%;
  border-radius:3px
}
.founder-grid h2{
  font-size:clamp(2rem,3.3vw,3.1rem)
}
.founder-grid .text-link{
  margin-top:10px
}
.closing{
  background:var(--gold);
  padding:70px 0
}
.closing-inner{
  display:flex;
  justify-content:space-between;
  gap:50px;
  align-items:center
}
.closing .eyebrow{
  color:#46541f;
  font-size:.6rem;
  margin-bottom:20px
}
.closing h2{
  font-size:clamp(2rem,3.3vw,3rem)
}
.closing p:not(.eyebrow){
  font-size:.9rem;
  max-width:580px
}
.closing .button{
  background:var(--dark);
  color:white;
  flex-shrink:0
}
.closing .button:hover{
  background:#2f4429
}
footer{
  background:#11190f;
  color:#b8c2af;
  padding:58px 0 22px
}
.footer-grid{
  display:grid;
  grid-template-columns:1.2fr .6fr 1fr;
  gap:65px
}
.footer-brand{
  display:block;
  max-width:270px;
  margin-bottom:24px
}
.footer-grid p{
  font-size:.8rem
}
.footer-grid .eyebrow{
  color:#c3cbaa;
  font-size:.6rem;
  margin-bottom:20px
}
.footer-grid>div>a:not(.footer-brand){
  display:block;
  font-size:.8rem;
  text-decoration:none;
  margin-bottom:14px
}
.email{
  overflow-wrap:anywhere
}
.footer-bottom{
  display:flex;
  justify-content:space-between;
  border-top:1px solid #34412c;
  margin-top:40px;
  padding-top:22px;
  font-size:.65rem
}
.footer-bottom a{
  text-decoration:none
}
.page-intro{
  padding:85px 0 65px;
  background:#eceedf
}
.page-intro .lead{
  max-width:730px;
  margin-top:25px
}
.page-opening h1{
  font-size:clamp(2.6rem,4.4vw,4rem)
}
.page-opening .founder-grid{
  grid-template-columns:.8fr 1.2fr
}
.speaking-figure{
  align-self:center
}
.speaking-figure img{
  border-radius:3px
}
.case+.case{
  border-top:1px solid var(--rule)
}
.case-copy h3{
  font-size:1.08rem;
  margin-top:26px;
  margin-bottom:10px
}
.case-copy h3:first-child{
  margin-top:0
}
.case-copy p{
  color:var(--muted)
}
.case-stat{
  font-size:6rem;
  letter-spacing:-.06em;
  color:var(--green);
  line-height:1.2;
  margin-top:35px
}
.case-stat span{
  display:block;
  font-size:.8rem;
  letter-spacing:0;
  color:var(--muted)
}
.product-exhibit{
  max-width:900px;
  margin:60px auto 0
}
.product-exhibit img{
  width:100%;
  box-shadow:0 15px 50px #1621140d
}
.journeys-exhibit{
  margin-bottom:45px
}
.journeys-exhibit .garden-photo{
  aspect-ratio:3.75
}
.metrics{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
  margin-bottom:45px;
  padding-block:30px;
  border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule)
}
.metrics strong{
  display:block;
  font-size:3rem;
  letter-spacing:-.05em
}
.metrics span{
  font-size:.8rem;
  color:var(--muted)
}
.portfolio-caption{
  margin-top:40px;
  font-size:.85rem;
  color:var(--muted)
}
.engagements{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px 50px;
  margin-top:30px
}
.engagements article{
  padding-top:24px;
  border-top:1px solid var(--rule)
}
.engagements h3{
  font-size:1.12rem
}
.engagements p{
  font-size:.9rem;
  color:var(--muted)
}
.contact-section{
  padding-bottom:0
}
.contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:25px
}
.contact-card{
  padding:44px;
  background:var(--dark);
  color:var(--cream);
  border-radius:3px
}
.contact-card .eyebrow{
  color:#c8ceba
}
.contact-card h2{
  font-size:2.4rem
}
.contact-card>p:not(.eyebrow){
  font-size:.95rem;
  max-width:430px
}
.contact-card .button{
  margin-top:15px
}
.contact-card.light{
  background:#eceedf;
  color:var(--ink)
}
.contact-card.light .eyebrow{
  color:var(--green)
}
.contact-email{
  margin-top:25px;
  font-size:.75rem!important
}
.prose{
  max-width:860px
}
.prose h2{
  font-size:1.6rem;
  margin-top:40px
}
.prose h2:first-child{
  margin-top:0
}
.prose p{
  color:var(--muted)
}
@media(min-width:1450px){
  .hero h1{
    font-size:4.6rem
  }
}
@media(max-width:1100px){
  .wrap{
    padding-inline:28px
  }
  .masthead-inner{
    gap:20px
  }
  .brand{
    width:235px
  }
  .masthead nav{
    gap:17px
  }
  .masthead nav a{
    font-size:.75rem
  }
  .masthead .button{
    font-size:.7rem;
    padding:12px
  }
  .hero-grid{
    gap:36px
  }
  .hero-photo{
    min-height:550px
  }
  .hero h1{
    font-size:3.55rem
  }
  .hero .eyebrow{
    font-size:.55rem
  }
  .hero .button{
    font-size:.73rem;
    padding:15px;
    gap:13px
  }
  .problem-grid{
    gap:55px
  }
  .founder-grid{
    gap:55px
  }
  .services-grid{
    gap:28px
  }
  .card-copy{
    padding:23px
  }
  .stat-visual strong{
    font-size:2rem
  }
  .footer-grid{
    gap:35px
  }
}
@media(max-width:800px){
  .masthead-inner{
    flex-wrap:wrap;
    padding-top:20px;
    padding-bottom:17px;
    gap:16px
  }
  .brand{
    width:240px
  }
  .masthead .button{
    margin-left:auto
  }
  .masthead nav{
    order:3;
    width:100%;
    justify-content:space-between;
    border-top:1px solid var(--rule);
    padding-top:14px
  }
  .masthead nav a{
    font-size:.8rem
  }
  .hero-grid{
    grid-template-columns:1fr 1fr;
    gap:25px;
    padding-top:42px;
    padding-bottom:42px
  }
  .hero h1{
    font-size:2.8rem
  }
  .hero .lead{
    font-size:.94rem
  }
  .hero-photo{
    min-height:530px
  }
  .hero .actions{
    gap:10px
  }
  .hero .eyebrow{
    max-width:260px
  }
  .hero-note{
    font-size:.62rem
  }
  .hero .button{
    font-size:.72rem
  }
  .section{
    padding-block:70px
  }
  .problem-grid{
    grid-template-columns:1fr;
    gap:40px
  }
  .services-grid{
    gap:24px
  }
  .services-grid h3{
    font-size:1.3rem
  }
  .services-grid article>p{
    font-size:.85rem
  }
  .work-grid{
    grid-template-columns:1fr
  }
  .work-card{
    display:grid;
    grid-template-columns:.85fr 1.15fr
  }
  .stat-visual,.product-visual,.work-card .garden-photo{
    height:100%;
    min-height:260px
  }
  .card-copy{
    padding:30px
  }
  .card-copy h3{
    font-size:1.7rem
  }
  .process-grid{
    grid-template-columns:1fr 1fr;
    gap:35px
  }
  .founder-grid{
    gap:35px
  }
  .founder-grid h2{
    font-size:2.1rem
  }
  .founder-grid .lead{
    font-size:1.05rem
  }
  .closing-inner{
    display:block
  }
  .closing .button{
    margin-top:25px
  }
  .footer-grid{
    grid-template-columns:1fr 1fr
  }
  .footer-grid>div:first-child{
    grid-column:1/-1
  }
  .footer-brand{
    max-width:240px
  }
  .contact-card{
    padding:28px
  }
  .contact-card h2{
    font-size:1.9rem
  }
  .page-opening .founder-grid{
    grid-template-columns:1fr 1.2fr
  }
  .page-opening h1{
    font-size:2.6rem
  }
  .experience h2{
    font-size:1.15rem
  }
  .experience-grid>div{
    padding-left:20px
  }
  .experience p:not(.eyebrow){
    font-size:.65rem
  }
}
@media(max-width:580px){
  .wrap{
    padding-inline:22px
  }
  .brand{
    width:170px
  }
  .masthead .button{
    font-size:.61rem;
    padding:11px 10px;
    gap:5px
  }
  .masthead-inner{
    gap:12px
  }
  .hero-grid{
    grid-template-columns:1fr;
    gap:32px;
    padding-top:35px;
    padding-bottom:30px
  }
  .hero h1{
    font-size:2.85rem;
    max-width:430px
  }
  .hero-copy{
    padding:0
  }
  .hero .eyebrow{
    font-size:.55rem;
    max-width:none;
    margin-bottom:20px
  }
  .hero .lead{
    font-size:1rem;
    margin-top:22px
  }
  .hero-note{
    font-size:.65rem
  }
  .hero .button{
    padding:16px;
    font-size:.77rem
  }
  .hero-photo{
    min-height:0;
    height:370px
  }
  .hero-photo>img{
    object-position:50% 34%
  }
  .hero-photo figcaption{
    padding:55px 20px 18px
  }
  .hero-photo figcaption strong{
    font-size:1.25rem
  }
  .experience{
    padding-block:27px
  }
  .experience-grid{
    grid-template-columns:1fr;
    gap:18px
  }
  .experience-grid>div{
    border:0;
    border-top:1px solid #c7cbb8;
    padding:16px 0 0
  }
  .experience-grid>div:first-child{
    padding:0
  }
  .experience h2{
    font-size:1.35rem
  }
  .experience p:not(.eyebrow){
    font-size:.75rem
  }
  .experience>.wrap>.eyebrow{
    margin-bottom:20px
  }
  .section{
    padding-block:60px
  }
  .section-heading{
    margin-bottom:35px
  }
  .problem-section{
    padding-bottom:0
  }
  .problem-grid{
    gap:30px
  }
  .lead{
    font-size:1.06rem
  }
  h2{
    font-size:2.15rem
  }
  .services-grid{
    grid-template-columns:1fr;
    gap:35px
  }
  .services-grid article{
    padding-top:20px
  }
  .services-grid h3{
    font-size:1.7rem
  }
  .services-grid article>p{
    font-size:1rem
  }
  .number{
    margin-bottom:17px
  }
  .deliverable p{
    font-size:.92rem
  }
  .deliverable{
    padding-top:14px
  }
  .heading-row{
    display:block
  }
  .heading-row .text-link{
    margin-top:20px
  }
  .work-card{
    display:flex
  }
  .stat-visual,.product-visual,.work-card .garden-photo{
    height:200px;
    min-height:0
  }
  .stat-visual{
    padding:30px
  }
  .stat-visual strong{
    font-size:3rem
  }
  .stat-visual>span{
    font-size:.7rem
  }
  .card-copy{
    padding:28px
  }
  .card-copy h3{
    font-size:1.7rem
  }
  .card-copy>p:not(.eyebrow){
    font-size:.95rem
  }
  .card-copy>a{
    font-size:.82rem
  }
  .process-grid{
    gap:30px 22px
  }
  .process-grid h3{
    font-size:1.1rem
  }
  .process-grid p{
    font-size:.83rem
  }
  .founder-grid,.page-opening .founder-grid{
    grid-template-columns:1fr;
    gap:35px
  }
  .founder-photo{
    max-height:430px;
    object-position:center 20%
  }
  .founder-grid h2{
    font-size:2.15rem
  }
  .closing{
    padding-block:50px
  }
  .closing h2{
    font-size:2.1rem
  }
  .closing p:not(.eyebrow){
    font-size:.95rem
  }
  .footer-grid{
    grid-template-columns:1fr;
    gap:30px
  }
  .footer-grid>div:first-child{
    grid-column:auto
  }
  .footer-grid .eyebrow{
    margin-bottom:13px
  }
  .footer-grid>div>a:not(.footer-brand){
    font-size:.85rem
  }
  .page-intro{
    padding-block:55px
  }
  .page-intro h1{
    font-size:2.65rem
  }
  .case-stat{
    font-size:5rem
  }
  .case-copy p{
    font-size:.95rem
  }
  .metrics{
    grid-template-columns:1fr 1fr
  }
  .engagements,.contact-grid{
    grid-template-columns:1fr
  }
  .contact-card{
    padding:30px
  }
  .contact-card h2{
    font-size:2rem
  }
  .journeys-exhibit .garden-photo{
    aspect-ratio:2.4
  }
  .product-exhibit{
    margin-top:30px
  }
}
@media(prefers-reduced-motion:reduce){
  html{
    scroll-behavior:auto
  }
  .button{
    transition:none
  }
  .button:hover{
    transform:none
  }
}

/* Evidence keeps its original content; the surrounding presentation is GBS. */
.interface-stage {
  padding: clamp(22px, 5vw, 64px);
  background: radial-gradient(ellipse at 20% 0%, #e2e9d5, transparent 70%), #e9eadf;
  border: 1px solid #d8ddc9;
  border-radius: 12px;
}
.interface-frame {
  overflow: hidden;
  border: 1px solid #d6dbce;
  border-radius: 8px;
  background: white;
  box-shadow: 0 22px 45px -18px #16211450, 0 3px 9px #1621140d;
}
.interface-chrome {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 12px 15px;
  background: #f5f6f0;
  border-bottom: 1px solid #dde1d5;
}
.interface-chrome > span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #a8b39a;
}
.interface-chrome b {
  margin-left: 12px;
  font-size: .6rem;
  font-weight: 500;
  color: #606b54;
  letter-spacing: .03em;
}
.product-exhibit .interface-frame img {
  box-shadow: none;
}
.exhibit-label {
  display: block;
  font-size: .6rem;
  text-transform: uppercase;
  letter-spacing: .15em;
  color: var(--green);
  font-weight: 700;
  margin-bottom: 5px;
}
.product-visual--polished {
  background: radial-gradient(ellipse at 25% 15%, #d6e2c3, transparent 80%), #e8eadf;
  padding: 24px 20px;
}
.product-visual--polished img {
  border: 5px solid white;
  border-radius: 5px;
  box-shadow: 0 14px 24px -10px #14271050;
  transform: rotate(-2deg);
}
.evidence-grid {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 30px;
  margin: 52px 0;
  align-items: stretch;
}
.publication-card {
  display: grid;
  grid-template-columns: 145px 1fr;
  gap: 26px;
  align-items: start;
  padding: 32px;
  background: #eceee4;
  border-radius: 6px;
}
.case-jacket {
  position: relative;
  min-height: 235px;
  padding: 24px 18px 20px 24px;
  color: #f8f7f1;
  background: linear-gradient(90deg, #1c2c16 0 7px, #334728 8px 11px, #23371b 12px);
  box-shadow: 8px 10px 0 -3px #d0d5c4, 12px 17px 22px -14px #14230d80;
  border-top: 3px solid var(--gold);
}
.case-jacket > span { display: block; }
.jacket-type { font-size: .5rem; letter-spacing: .17em; text-transform: uppercase; color: #d4d9c8; }
.jacket-title { font-size: 1.45rem; letter-spacing: -.04em; line-height: 1.05; margin: 28px 0 17px; font-weight: 600; }
.jacket-rule { width: 30px; height: 2px; background: var(--gold); margin-bottom: 15px; }
.jacket-subtitle { font-size: .6rem; line-height: 1.5; color: #e0e5d7; }
.jacket-code { font-size: .5rem; letter-spacing: .06em; margin-top: 25px; color: #c0cbb3; }
.evidence-copy .eyebrow { font-size: .55rem; margin-bottom: 12px; }
.evidence-copy h3 { font-size: 1.35rem; line-height: 1.2; }
.evidence-copy > p:not(.eyebrow) { font-size: .83rem; color: var(--muted); }
.evidence-copy .text-link { font-size: .75rem; line-height: 1.6; }
.evidence-copy .source-note { font-size: .62rem !important; margin-top: 16px; }
.partner-perspective {
  border-top: 3px solid var(--green);
  padding: 25px 8px 0 22px;
}
.partner-perspective .eyebrow { font-size: .57rem; margin-bottom: 12px; }
.quote-mark { display: block; color: var(--green); font: 5rem/.8 Georgia, serif; margin: 20px 0 -10px; }
.partner-perspective blockquote { margin: 0; }
.partner-perspective blockquote p { font-size: 1.3rem; line-height: 1.5; letter-spacing: -.02em; }
.quote-attribution { margin-top: 22px; }
.quote-attribution strong { display: block; font-size: .85rem; }
.quote-attribution span { display: block; font-size: .7rem; color: var(--muted); margin-top: 3px; }
.partner-perspective .text-link { font-size: .7rem; line-height: 1.7; }
.coverage-link { margin-top: 18px; font-size: .8rem; line-height: 1.7; }
@media(max-width:1100px) {
  .evidence-grid { grid-template-columns: 1fr; }
  .partner-perspective { padding: 25px 10px 0; }
  .partner-perspective blockquote { max-width: 720px; }
}
@media(max-width:580px) {
  .interface-chrome { padding: 9px; gap: 4px; }
  .interface-chrome b { font-size: .45rem; margin-left: 5px; }
  .interface-chrome > span { width: 4px; height: 4px; }
  .interface-stage { padding: 15px; border-radius: 7px; }
  .publication-card { grid-template-columns: 1fr; padding: 26px; gap: 30px; }
  .case-jacket { width: 155px; }
  .evidence-copy h3 { font-size: 1.5rem; }
  .partner-perspective blockquote p { font-size: 1.2rem; }
}
