:root{--forest:#17352c;--forest-dark:#10271f;--forest-soft:#2b5145;--gold:#a27b43;--gold-light:#c9a66f;--cream:#f3eee4;--paper:#fbfaf7;--ink:#25342e;--muted:#5f665f;--line:#d8d0c2;--serif:"Libre Caslon Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%}.container{width:min(1180px,calc(100% - 48px));margin:auto}.skip-link{position:absolute;left:-999px;top:8px;background:#fff;padding:10px;z-index:99}.skip-link:focus{left:8px}.group-badge{font-size:11px;letter-spacing:.01em;font-weight:500;color:var(--muted);white-space:nowrap}.group-badge:hover{color:var(--gold)}.site-header{position:relative;background:#fff;border-bottom:1px solid rgba(0,0,0,.08);z-index:10}.header-inner{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;align-items:center;column-gap:16px;row-gap:4px;color:var(--forest)}.brand-icon-link{grid-row:1/3;grid-column:1;display:flex;align-items:center}.brand-icon{display:block;width:74px;height:auto;flex-shrink:0}.brand-name-link{grid-row:1;grid-column:2}.brand-name{font:400 26px var(--serif);color:var(--forest);line-height:1;letter-spacing:.005em;white-space:nowrap}.tagline-row{grid-row:2;grid-column:2;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 16px;max-width:380px}.brand-tagline{font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--gold);font-weight:600;white-space:nowrap}.primary-nav{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:600}.primary-nav a{padding:8px 0;white-space:nowrap}.primary-nav a.active{color:var(--gold)}.nav-cta{background:var(--forest);color:#fff!important;padding:13px 18px!important}.nav-toggle{display:none;border:0;background:none;padding:8px}.nav-toggle span{display:block;width:25px;height:2px;background:var(--forest);margin:5px}.hero,.subhero{position:relative;background-size:cover;background-position:center;color:#fff}.home-hero{background-image:url('../images/gorge.jpeg')}.about-hero{background-image:url('../images/harbor-rain.jpeg');background-position:center 46%}.services-hero{background-image:url('../images/coastal-sunset.jpeg');background-position:center 54%}.process-hero{background-image:url('../images/harbor-rain.jpeg');background-position:center 62%}.why-hero{background-image:url('../images/coastal-sunset.jpeg');background-position:center 40%}.team-hero{background-image:url('../images/gorge.jpeg');background-position:center 58%}.contact-hero{background-image:linear-gradient(120deg,#10271f,#2b5145)}.home-hero{min-height:650px;display:flex;align-items:center;background-position:center 48%}.subhero{min-height:485px;display:flex;align-items:center;background-position:center 46%}.services-hero{background-position:center 54%}.process-hero{background-position:center 45%}.contact-hero{background-position:center 59%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,25,17,.86) 0%,rgba(8,25,17,.65) 44%,rgba(8,25,17,.18) 78%)}.hero-content,.subhero-content{position:relative;z-index:1;padding:95px 0;max-width:760px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.18em;font-weight:700;color:var(--gold);margin:0 0 15px}.eyebrow.light{color:#e0c594}.hero h1,.subhero h1{font:400 clamp(47px,6vw,78px)/1.08 var(--serif);margin:0 0 25px}.subhero h1{font-size:clamp(43px,5vw,68px)}.hero-lede,.subhero-content>p:last-child{font-size:20px;max-width:690px;color:rgba(255,255,255,.9)}.button-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;justify-content:center;align-items:center;padding:14px 21px;font-weight:700;font-size:14px;border:1px solid transparent}.button-gold{background:var(--gold);color:#fff}.button-ghost{border-color:rgba(255,255,255,.65);color:#fff}.button-dark{background:var(--forest);color:#fff}.trust-bar{background:var(--forest-dark);color:#fff}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr)}.trust-grid div{padding:28px 34px;border-right:1px solid rgba(255,255,255,.12)}.trust-grid div:last-child{border:0}.trust-grid strong,.trust-grid span{display:block}.trust-grid strong{font:400 22px var(--serif);color:#e2c99f}.trust-grid span{font-size:13px;color:rgba(255,255,255,.72);margin-top:5px}.section{padding:92px 0}.cream{background:var(--cream)}.forest{background:var(--forest);color:#fff}.split-heading{display:grid;grid-template-columns:.7fr 2fr;gap:75px}.split-heading h2,.section-heading h2,.image-copy h2,.who-grid h2,.contact-layout h2,.process-preview h2{font:400 clamp(34px,4vw,52px)/1.18 var(--serif);margin:0 0 20px}.split-heading p:not(.eyebrow){font-size:18px;color:var(--muted);max-width:800px}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:40px}.section-heading>div{max-width:760px}.section-heading h2{margin-bottom:0}.section-note,.section-heading>p{max-width:360px;color:var(--muted);font-size:14px}.text-link{color:var(--forest);font-weight:700}.text-link.light{color:#e0c594}.card-grid{display:grid;gap:20px}.card-grid.four{grid-template-columns:repeat(4,1fr)}.card-grid.three{grid-template-columns:repeat(3,1fr)}.service-card,.value-card{background:#fff;border:1px solid rgba(100,90,70,.15);border-top:3px solid var(--gold);padding:29px 25px;min-height:245px}.service-card span,.value-card>span{color:var(--gold);font-weight:700;font-size:12px;letter-spacing:.1em}.service-card h3,.value-card h3{font:400 24px/1.2 var(--serif);margin:20px 0 12px}.service-card p,.value-card p{color:#5a605a;margin:0}.why-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:start}.why-grid h2{font:400 clamp(35px,4vw,52px)/1.17 var(--serif);margin:0 0 18px}.why-grid>div:first-child>p:not(.eyebrow){color:rgba(255,255,255,.75);font-size:17px}.principle-list>div{display:grid;grid-template-columns:55px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.14)}.principle-list b{color:#d1ad72}.principle-list strong,.principle-list small{display:block}.principle-list strong{font:400 21px var(--serif)}.principle-list small{color:rgba(255,255,255,.67);margin-top:4px}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.case-grid article{background:#fff;border:1px solid var(--line);padding:30px}.case-grid span{color:var(--gold);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em}.case-grid h3{font:400 25px/1.25 var(--serif);margin:14px 0}.case-grid p{color:#59605a;font-size:15px}.process-preview{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center}.process-preview ol{list-style:none;margin:0;padding:0}.process-preview li{display:grid;grid-template-columns:55px 1fr;padding:16px 0;border-bottom:1px solid var(--line);font:400 22px var(--serif)}.process-preview li span{font:700 12px var(--sans);color:var(--gold)}.image-copy{display:grid;grid-template-columns:1fr 1.05fr;gap:75px;align-items:center}.image-copy.reverse .photo-panel{order:2}.photo-panel{min-height:520px;background:linear-gradient(rgba(23,53,44,.08),rgba(23,53,44,.08)),url('../images/harbor-rain.jpeg') center/cover;box-shadow:24px 24px 0 var(--cream)}.image-copy p:not(.eyebrow){color:var(--muted);font-size:17px}.image-copy blockquote{border-left:3px solid var(--gold);padding:18px 0 18px 25px;margin:28px 0 0;font:400 21px/1.5 var(--serif)}.who-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.audience-list{border-left:1px solid var(--line);padding-left:45px}.audience-list p{display:grid;grid-template-columns:26px 1fr;gap:12px}.audience-list span{color:var(--gold)}.service-detail{padding:75px 0;background:#fff}.service-detail.alternate{background:var(--cream)}.detail-grid{display:grid;grid-template-columns:70px 1.35fr .75fr;gap:45px}.detail-number{font:400 40px var(--serif);color:var(--gold)}.detail-grid h2{font:400 clamp(32px,4vw,48px)/1.2 var(--serif);margin:0 0 15px}.detail-grid .lead{font:400 20px/1.55 var(--serif);color:#39483f}.detail-grid p{color:var(--muted)}.detail-grid aside{border-left:1px solid var(--line);padding-left:30px}.detail-grid aside h3{font:400 21px var(--serif)}.detail-grid ul{list-style:none;padding:0}.detail-grid li{padding:8px 0 8px 19px;border-bottom:1px solid rgba(0,0,0,.08);position:relative;color:#525a54}.detail-grid li:before{content:"";position:absolute;left:0;top:17px;width:6px;height:6px;border:1px solid var(--gold);transform:rotate(45deg)}.timeline{position:relative}.timeline:before{content:"";position:absolute;left:52px;top:0;bottom:0;width:1px;background:var(--line)}.timeline article{display:grid;grid-template-columns:105px 1fr;gap:30px;padding:0 0 60px}.timeline article>span{width:58px;height:58px;border-radius:50%;background:var(--forest);color:#fff;display:grid;place-items:center;font-weight:700;z-index:1}.timeline h2{font:400 clamp(29px,3.4vw,43px)/1.2 var(--serif);margin:0 0 13px}.timeline p{color:var(--muted);max-width:790px}.timeline ul{display:flex;gap:10px;flex-wrap:wrap;list-style:none;padding:0}.timeline li{background:#fff;border:1px solid var(--line);padding:7px 11px;font-size:13px}.differentiator-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.13)}.differentiator-grid article{background:var(--forest);padding:35px}.differentiator-grid span{color:#d1ad72;font-size:12px;font-weight:700}.differentiator-grid h3{font:400 24px var(--serif)}.differentiator-grid p{color:rgba(255,255,255,.72)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px}.contact-layout>div>p{color:var(--muted);font-size:17px}.contact-details{display:grid;gap:20px;margin:35px 0}.contact-details div{border-bottom:1px solid var(--line);padding-bottom:14px}.contact-details small,.contact-details a,.contact-details span{display:block}.contact-details small{text-transform:uppercase;letter-spacing:.12em;color:var(--gold);font-weight:700}.contact-details a,.contact-details span{font:400 20px var(--serif);margin-top:4px}.notice{background:var(--cream);padding:18px;font-size:13px}.contact-form{background:#fff;border:1px solid var(--line);padding:35px;display:grid;gap:17px}.contact-form label{display:grid;gap:7px;font-size:13px;font-weight:700}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #cfc7b9;background:#fbfaf7;padding:12px;font:inherit}.form-note{font-size:12px;color:var(--muted);margin:0}.final-cta{background:var(--forest-dark);color:#fff;padding:62px 0}.final-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.final-cta h2{font:400 clamp(30px,4vw,46px)/1.18 var(--serif);margin:0;max-width:800px}.site-footer{background:#1f211f;color:rgba(255,255,255,.72)}.footer-main{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:60px;padding:55px 0}.footer-main>div{display:flex;flex-direction:column;gap:7px}.footer-main h3{font:400 18px var(--serif);color:#fff;margin:0 0 8px}.footer-brand strong,.footer-brand span{display:block}.footer-brand strong{font:400 31px var(--serif);color:#fff}.footer-brand span{font-size:10px;text-transform:uppercase;letter-spacing:.15em;margin-top:7px}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:18px 0;display:flex;justify-content:space-between;font-size:12px}.reveal{opacity:0;transform:translateY(15px);transition:.65s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){.nav-toggle{display:block}.primary-nav{display:none;position:absolute;top:104px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:25px 30px;box-shadow:0 15px 25px rgba(0,0,0,.1)}.primary-nav.open{display:flex}.nav-cta{text-align:center}.card-grid.four{grid-template-columns:repeat(2,1fr)}.case-grid,.differentiator-grid{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:55px 1fr}.detail-grid aside{grid-column:2;border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.split-heading,.why-grid,.image-copy,.who-grid,.process-preview,.contact-layout{grid-template-columns:1fr;gap:40px}.image-copy.reverse .photo-panel{order:0}.final-cta-inner{align-items:flex-start}.footer-main{grid-template-columns:1.4fr 1fr 1fr}}
@media(max-width:680px){.container{width:min(100% - 28px,1180px)}.header-inner{min-height:88px}.brand-icon{width:56px}.brand-name{font-size:20px}.brand-tagline{font-size:9px}.tagline-row{gap:4px 12px}.group-badge{font-size:10.5px}.primary-nav{top:88px}.home-hero{min-height:600px;background-position:62% center}.subhero{min-height:430px;background-position:62% center}.hero-shade{background:rgba(8,25,17,.68)}.hero-content,.subhero-content{padding:70px 0}.section{padding:68px 0}.trust-grid,.card-grid.four,.card-grid.three,.case-grid,.differentiator-grid{grid-template-columns:1fr}.trust-grid div{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.section-heading{display:block}.section-heading .text-link{display:inline-block;margin-top:18px}.service-card,.value-card{min-height:auto}.photo-panel{min-height:330px;box-shadow:12px 12px 0 var(--cream)}.detail-grid{grid-template-columns:1fr;gap:15px}.detail-grid aside{grid-column:auto}.timeline:before{left:27px}.timeline article{grid-template-columns:58px 1fr;gap:18px}.timeline article>span{width:54px;height:54px}.timeline ul{display:block}.final-cta-inner,.footer-bottom{flex-direction:column;align-items:flex-start}.footer-main{grid-template-columns:1fr;gap:30px}.contact-form{padding:24px}}
.team-grid{display:grid;gap:42px}.team-profile{display:grid;grid-template-columns:minmax(270px,.72fr) 1.35fr;gap:52px;align-items:stretch;background:#fff;border:1px solid var(--line);padding:28px}.team-profile.reverse{grid-template-columns:1.35fr minmax(270px,.72fr)}.team-profile.reverse img{order:2}.team-profile img{width:100%;height:100%;min-height:430px;object-fit:cover;object-position:center top}.team-copy{padding:20px 14px}.team-copy h2{font:400 clamp(34px,4vw,49px)/1.12 var(--serif);margin:0 0 18px}.team-copy>p:not(.eyebrow){color:var(--muted);font-size:16px}.team-copy ul{list-style:none;padding:0;margin:24px 0}.team-copy li{position:relative;padding:9px 0 9px 22px;border-bottom:1px solid rgba(0,0,0,.08)}.team-copy li:before{content:"";position:absolute;left:1px;top:18px;width:7px;height:7px;border:1px solid var(--gold);transform:rotate(45deg)}
@media(max-width:1000px){.team-profile,.team-profile.reverse{grid-template-columns:1fr}.team-profile.reverse img{order:0}.brand-icon{width:80px}.brand-name{font-size:26px}}
@media(max-width:680px){.brand-icon{width:52px}.brand-name{font-size:19px}.team-profile{padding:18px;gap:22px}.team-profile img{min-height:330px}.team-copy{padding:6px}}

/* Team page portrait refinement */
.team-profile,
.team-profile.reverse{
  grid-template-columns:220px 1fr;
  align-items:start;
}
.team-profile.reverse{
  grid-template-columns:1fr 220px;
}
.team-profile img{
  width:220px;
  height:220px;
  min-height:0;
  aspect-ratio:1 / 1;
  border-radius:50%;
  object-fit:cover;
  object-position:center top;
  border:6px solid #fff;
  box-shadow:0 0 0 1px var(--line),0 10px 28px rgba(16,39,31,.12);
  align-self:start;
}
@media(max-width:1000px){
  .team-profile,
  .team-profile.reverse{
    grid-template-columns:180px 1fr;
  }
  .team-profile.reverse{
    grid-template-columns:1fr 180px;
  }
  .team-profile img{
    width:180px;
    height:180px;
  }
}
@media(max-width:760px){
  .team-profile,
  .team-profile.reverse{
    grid-template-columns:1fr;
  }
  .team-profile.reverse img{
    order:0;
  }
  .team-profile img{
    width:160px;
    height:160px;
    justify-self:center;
  }
  .team-copy{
    text-align:left;
  }
}

/* Version 3.1 refinements */
.team-role{margin:-8px 0 20px;color:var(--forest);font:400 18px/1.55 var(--serif)}
.team-role em{color:var(--muted)}
.team-role strong{font-weight:400;color:var(--forest)}
.why-photo-panel{background-image:linear-gradient(rgba(23,53,44,.08),rgba(23,53,44,.08)),url('../images/gorge.jpeg');background-position:center 55%}

/* Version 3.2: equal co-founder presentation */
.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.team-profile,.team-profile.reverse{grid-template-columns:170px 1fr;gap:30px;height:100%;align-items:start}
.team-profile.reverse img{order:0}
.team-profile img{width:170px;height:170px}
.team-copy{padding:6px 4px}
.team-copy h2{font-size:clamp(31px,3.2vw,43px);margin-bottom:12px}
.team-role{min-height:64px;margin:-4px 0 18px}
@media(max-width:1000px){.team-grid{grid-template-columns:1fr}.team-profile,.team-profile.reverse{grid-template-columns:180px 1fr}.team-profile img{width:180px;height:180px}.team-role{min-height:0}}
@media(max-width:760px){.team-profile,.team-profile.reverse{grid-template-columns:1fr}.team-profile img{width:155px;height:155px}}
@media(max-width:460px){.brand-tagline{white-space:normal;max-width:150px;line-height:1.35}.group-badge{white-space:normal;max-width:150px;line-height:1.35}.tagline-row{gap:2px 10px}.brand-icon{width:46px}.brand-name{font-size:17px}}
