
:root{--navy:#0b2344;--green:#19745f;--ink:#172536;--mist:#f5f8f6;--line:#dce5e1;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--sans);color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}
.site-header{height:112px;display:flex;align-items:center;gap:42px;padding:12px 4.4vw;background:#fff;border-bottom:1px solid #e8eeeb;position:sticky;top:0;z-index:30}.brand{display:flex;align-items:center}.brand-logo{display:block;width:142px;height:92px;object-fit:cover}.main-nav{margin-left:auto;display:flex;gap:27px;text-transform:uppercase;font-size:12px;letter-spacing:1.75px;font-weight:700}.menu-toggle{display:none;margin-left:auto;border:0;background:var(--navy);color:#fff;padding:15px 22px;text-transform:uppercase;letter-spacing:1.5px;font-weight:700}
.hero{min-height:720px;position:relative;overflow:hidden;background-image:url('https://images.unsplash.com/photo-1579970018561-4ceaecacdcec?auto=format&fit=crop&w=2400&q=70');background-size:cover;background-position:center;isolation:isolate}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.98) 0 42%,rgba(255,255,255,.85) 55%,rgba(255,255,255,.18) 78%)}.hero-copy{position:relative;z-index:2;width:52%;padding:84px 2vw 76px 7vw}.eyebrow{text-transform:uppercase;color:var(--green);font-size:12px;letter-spacing:2.4px;font-weight:700}.hero h1,.focus-card h2,.experience h2,.rooted h2,.contact h2{font-family:var(--serif);font-weight:400}.hero h1{font-size:clamp(58px,6vw,96px);line-height:.88;letter-spacing:-3px;margin:22px 0 24px;color:var(--navy);text-transform:uppercase}.hero h1 em{font-style:normal;color:var(--green)}.accent-line{display:block;width:70px;height:2px;background:var(--green);margin:23px 0}.hero-lede{font-size:17px;line-height:1.7;color:#344353}.hero-actions{display:flex;gap:13px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:17px 23px;text-transform:uppercase;font-weight:700;letter-spacing:1.3px;font-size:12px}.button-primary{background:var(--navy);color:#fff}.button-secondary{background:#fff;color:var(--navy);border:1px solid var(--navy)}
.hero-person{position:absolute;z-index:3;right:1vw;bottom:0;width:min(28vw,390px);height:78%;display:flex;align-items:flex-end}.portrait-photo{width:100%;height:82%;object-fit:cover;object-position:center 14%;filter:grayscale(1) contrast(1.04);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.9) 12%,#000 25% 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.9) 12%,#000 25% 100%)}
.focus-grid{display:grid;grid-template-columns:1fr 1fr;padding:70px 4vw;gap:28px}.focus-card{min-height:470px;border:1px solid var(--line);display:grid;grid-template-columns:46% 54%;overflow:hidden}.focus-copy{padding:42px 30px;display:flex;flex-direction:column;align-items:flex-start}.focus-card h2{font-size:48px;line-height:1.03;color:var(--navy);margin:12px 0}.focus-copy>p:not(.eyebrow){font-size:14px;line-height:1.75;color:#53616b}.text-link{margin-top:auto;color:var(--green);text-transform:uppercase;font-size:12px;letter-spacing:1.4px;font-weight:700}.photo{background-size:cover;background-position:center}.photo-home{background-image:url('https://images.unsplash.com/photo-1714836982299-7a3b6930e2f5?auto=format&fit=crop&w=1800&q=70')}.photo-commercial{background-image:url('https://images.unsplash.com/photo-1763887571604-b6bf109fb24a?auto=format&fit=crop&w=1800&q=70')}
.experience{background:var(--mist);padding:58px 5vw 76px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-kicker{display:flex;align-items:center;justify-content:center;gap:18px;color:var(--green);text-transform:uppercase;letter-spacing:2.4px;font-size:12px;font-weight:700;margin-bottom:47px}.section-kicker span{height:1px;background:#9ab5ad;width:110px}.experience-grid{display:grid;grid-template-columns:1.4fr 1.3fr repeat(3,.72fr);max-width:1460px;margin:auto}.experience-grid>div{padding:7px 30px;border-left:1px solid #cfdcd8}.experience-grid>div:first-child{border-left:0}.experience h2{font-size:46px;line-height:1.06;color:var(--navy);margin:0}.experience h2 em{color:var(--green);font-style:normal}.experience-copy{font-size:14px;line-height:1.78;color:#52616a}.stat{text-align:center;display:flex;flex-direction:column;justify-content:center}.stat strong{font:34px/1.04 var(--serif);color:var(--navy)}.stat small{text-transform:uppercase;letter-spacing:1.4px;color:var(--green);font-size:10px;margin-top:9px;line-height:1.5}
.rooted{min-height:500px;position:relative;background-image:url('https://images.unsplash.com/photo-1582908880177-0143c232bc71?auto=format&fit=crop&w=2200&q=70');background-size:cover;background-position:center}.rooted-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,32,48,.86) 0,rgba(6,42,53,.65) 48%,rgba(6,42,53,.12) 84%)}.rooted-copy{position:relative;z-index:2;color:#fff;padding:116px 7vw;max-width:670px}.rooted h2{font-size:57px;line-height:1.03;margin:16px 0}.rooted-copy>p:last-child{font-size:16px;line-height:1.75}
.contact{background:var(--navy);color:#fff;display:grid;grid-template-columns:1fr 1.25fr 1.15fr;align-items:center;gap:34px;padding:48px 5vw}.footer-logo{display:block;width:210px;max-width:100%}.contact-identity h2{font-size:35px;margin:0 0 10px}.contact-identity p{color:#6eb49a;text-transform:uppercase;letter-spacing:1.4px;font-size:11px;font-weight:700}.contact-identity span{font-size:12px;text-transform:uppercase;letter-spacing:1.15px}.contact-details{display:grid;gap:12px;font-size:15px}
.trec-notices{background:#071a31;color:#fff;text-align:center;padding:22px 5vw 24px;border-top:1px solid rgba(255,255,255,.14)}.trec-notices p{margin:0 auto 12px;max-width:900px;font-size:12px;line-height:1.55;color:#d8e0e8}.trec-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 30px}.trec-links a{color:#8fd0b8;text-decoration:underline;text-underline-offset:3px;font-size:16px;font-weight:700}
.legal{background:#06152a;color:#adbac8;padding:15px 5vw;font-size:10px;text-transform:uppercase;letter-spacing:1px;display:flex;justify-content:space-between}

@media(max-width:760px){
  .site-header{height:104px;padding:10px 18px;position:relative}.brand-logo{width:124px;height:82px}.menu-toggle{display:block;min-width:120px;min-height:56px}.main-nav{display:none;position:absolute;top:104px;left:0;right:0;background:#fff;padding:10px 18px 22px;flex-direction:column;z-index:50}.main-nav.open{display:flex}.main-nav a{padding:15px 4px;border-bottom:1px solid #edf1ef;font-size:12px}
  .hero{min-height:760px;background-position:58% center}.hero-overlay{background:linear-gradient(180deg,rgba(255,255,255,.995) 0 58%,rgba(255,255,255,.82) 66%,rgba(255,255,255,.28) 79%,rgba(3,22,38,.08) 100%)}.hero-copy{width:100%;padding:42px 22px 310px}.hero h1{font-size:clamp(42px,11.8vw,50px);line-height:.92;letter-spacing:-1.6px;margin:17px 0}.hero-lede{font-size:15px;line-height:1.52}.hero-actions{flex-direction:column;gap:12px;width:100%;position:relative;z-index:5}.hero-actions .button{width:100%;min-height:54px}.hero-person{width:48vw;max-width:215px;height:255px;right:0;bottom:0}.portrait-photo{height:100%;object-position:center 16%}
  .focus-grid{grid-template-columns:1fr;padding:30px 16px}.focus-card{grid-template-columns:1fr;min-height:0}.photo{min-height:240px}.focus-copy{padding:28px 24px}.focus-card h2{font-size:38px}.experience{padding:38px 18px 48px}.experience-grid{grid-template-columns:1fr}.experience-grid>div{border-left:0;border-top:1px solid #cfdcd8;padding:22px 5px}.rooted{min-height:440px}.rooted-copy{padding:62px 22px}.rooted h2{font-size:40px}.contact{grid-template-columns:1fr;padding:38px 22px;gap:22px}.footer-logo{width:175px}.contact-details{font-size:16px}.trec-notices{padding:22px 20px 24px}.trec-links{flex-direction:column;gap:12px}.trec-links a{display:block;font-size:16px;padding:3px 0}.legal{display:block;line-height:1.7;padding:14px 22px}.legal span{display:block}
}


/* My ATX Gems */
.nav-gems{
  background:var(--green);
  color:#fff !important;
  padding:14px 18px !important;
  border-bottom:0 !important;
}
.nav-gems:hover{filter:brightness(.96)}

.gems-teaser{
  padding:72px 7vw;
  background:#fff;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.gems-teaser-copy{max-width:760px}
.gems-teaser h2{
  font-family:var(--serif);
  font-weight:400;
  color:var(--navy);
  font-size:58px;
  line-height:1;
  margin:12px 0 18px;
}
.gems-teaser p:not(.eyebrow){
  color:#53616b;
  font-size:17px;
  line-height:1.7;
  max-width:680px;
}
.gems-button{margin-top:14px}

.gems-page{background:#fff}
.gems-hero{
  padding:76px 7vw 58px;
  background:var(--mist);
  border-bottom:1px solid var(--line);
}
.gems-hero h1{
  margin:10px 0 16px;
  font:400 clamp(52px,7vw,88px)/.95 var(--serif);
  color:var(--navy);
}
.gems-hero p{
  max-width:720px;
  font-size:17px;
  line-height:1.7;
  color:#52616a;
}
.gems-back{
  display:inline-block;
  margin-top:18px;
  color:var(--green);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:1.2px;
  font-size:12px;
}
.gems-wrap{padding:56px 5vw 80px}
.gems-category{max-width:1400px;margin:0 auto 58px}
.gems-category h2{
  font:400 42px/1 var(--serif);
  color:var(--navy);
  margin:0 0 24px;
  padding-bottom:14px;
  border-bottom:1px solid var(--line);
}
.gems-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
.gem-card{
  border:1px solid var(--line);
  padding:24px;
  background:#fff;
  min-height:210px;
  display:flex;
  flex-direction:column;
}
.gem-card h3{
  font:400 27px/1.08 var(--serif);
  color:var(--navy);
  margin:0 0 12px;
}
.gem-card p{
  margin:0 0 18px;
  color:#58656f;
  font-size:14px;
  line-height:1.65;
}
.gem-card a{
  margin-top:auto;
  color:var(--green);
  text-transform:uppercase;
  letter-spacing:1.2px;
  font-weight:700;
  font-size:11px;
}
.gem-note{
  max-width:1400px;
  margin:0 auto;
  padding-top:10px;
  color:#6b747d;
  font-size:12px;
  line-height:1.6;
}
@media(max-width:900px){
  .gems-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .nav-gems{
    margin-top:10px;
    text-align:center;
  }
  .gems-teaser{padding:50px 22px}
  .gems-teaser h2{font-size:46px}
  .gems-hero{padding:52px 22px 44px}
  .gems-wrap{padding:38px 18px 60px}
  .gems-grid{grid-template-columns:1fr}
  .gem-card{min-height:0}
}
