
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600&display=swap');
:root{--navy:#071e30;--navy2:#0c2d44;--gold:#b88a3d;--cream:#f5f2eb;--ink:#112b3d;--muted:#637582;--line:#dde2e3}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"DM Sans",sans-serif;background:#fff}a{color:inherit}
.wrap{width:min(1180px,calc(100% - 48px));margin:auto}
.site-header{height:88px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:sticky;top:0;z-index:50;border-bottom:1px solid #e8ebec}
.brand{text-decoration:none;display:flex;flex-direction:column;align-items:center;color:var(--navy);min-width:205px}
.brand img{width:66px;height:24px;object-fit:contain}.brand b{font:600 21px/1 "Playfair Display",serif;letter-spacing:.12em}.brand small{font-size:6px;letter-spacing:.25em;margin-top:5px}
.nav{display:flex;align-items:center;gap:24px}.nav a{text-decoration:none;font-size:11px;font-weight:600}.nav .talk{background:var(--gold);color:#fff;padding:14px 19px;letter-spacing:.1em}
.hero{min-height:610px;position:relative;display:flex;align-items:center;color:#fff;background:url("assets/reno-hero-clean.jpg") center/cover no-repeat;overflow:hidden}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,20,32,.96) 0%,rgba(3,20,32,.84) 43%,rgba(3,20,32,.32) 74%,rgba(3,20,32,.12) 100%)}
.hero .wrap{position:relative;z-index:1;padding:80px 0}
.eyebrow{font-size:10px;letter-spacing:.28em;font-weight:700;color:#e1b966}
.hero h1,.subhero h1{font:500 clamp(55px,6.7vw,88px)/.98 "Playfair Display",serif;letter-spacing:-.035em;margin:14px 0 22px;max-width:820px}
.hero h1 em{font-weight:500;color:#eee8dc}.hero-copy{font-size:17px;line-height:1.6;max-width:610px;color:#e5edf0}
.buttons{display:flex;gap:12px;margin-top:30px}.btn{display:inline-block;text-decoration:none;padding:14px 20px;font-size:10px;font-weight:700;letter-spacing:.1em}.btn-gold{background:var(--gold);color:#fff}.btn-outline{border:1px solid #ffffff9c;color:#fff}
.service-ribbon{background:var(--navy);padding:0 0 34px}.service-tiles{width:min(1240px,calc(100% - 48px));margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;transform:translateY(-38px)}
.tile{height:285px;position:relative;overflow:hidden;text-decoration:none;color:#fff;background:#102f43}.tile img{width:100%;height:100%;object-fit:cover;transition:.45s transform}.tile:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,21,34,.98),rgba(3,21,34,.50) 55%,rgba(3,21,34,.05))}
.tile:hover img{transform:scale(1.035)}.tile-content{position:absolute;z-index:2;left:24px;right:22px;bottom:22px}.tile h2{font:500 24px "Playfair Display",serif;margin:0 0 8px}.tile h2:after{content:"";display:block;width:34px;border-top:2px solid #d6aa58;margin-top:9px}.tile p{font-size:12px;line-height:1.5;color:#d9e2e6;margin:0 0 12px}.learn{font-size:8px;letter-spacing:.18em;color:#e5bd70;font-weight:700}
.stats{background:#061b2b;color:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:28px max(5vw,24px)}.stat{text-align:center;border-right:1px solid #ffffff2b}.stat:last-child{border:0}.stat strong{display:block;font:500 34px "Playfair Display",serif;color:#f4eee2}.stat small{font-size:8px;letter-spacing:.19em;color:#bfcbd1}
.section{padding:90px 0}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:48px}.section-head h2,.founder h2,.when h2{font:500 44px/1.06 "Playfair Display",serif;margin:8px 0}.section-head p,.founder p{font-size:14px;line-height:1.75;color:var(--muted)}
.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.cap{padding:30px 28px 30px 0;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.cap:nth-child(3n){border-right:0;padding-left:28px}.cap:nth-child(3n+2){padding-left:28px}.cap b{font-size:9px;color:var(--gold)}.cap h3{font:500 23px "Playfair Display",serif;margin:10px 0}.cap p{font-size:13px;line-height:1.65;color:var(--muted)}
.intro{display:grid;grid-template-columns:1.05fr .95fr;min-height:450px}.intro-photo{background:url("assets/reno-wide.jpg") center/cover}.intro-copy{background:var(--cream);padding:75px 8vw 60px 60px}.intro-copy h2{font:500 45px/1.05 "Playfair Display",serif;margin:9px 0 20px}.intro-copy p{font-size:14px;line-height:1.75;color:#566b77}
.founder{display:grid;grid-template-columns:220px 1fr;gap:60px;align-items:center}.portrait{width:190px;height:190px;border-radius:50%;overflow:hidden;border:3px solid var(--navy);box-shadow:0 14px 35px rgba(7,30,48,.16);background:#fff}.portrait img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}
.contact{background:linear-gradient(90deg,rgba(3,20,32,.96),rgba(3,20,32,.76)),url("assets/reno-wide.jpg") center/cover;color:#fff;text-align:center}.contact .wrap{padding:82px 0}.contact h2{font:500 49px "Playfair Display",serif;margin:9px 0 15px}.contact p{max-width:650px;margin:0 auto 27px;color:#d3dde1}.contact-links{display:flex;justify-content:center;gap:10px}.contact-links a{padding:14px 20px;background:#fff;color:var(--navy);font-size:11px;font-weight:700;text-decoration:none}.contact-links a:first-child{background:var(--gold);color:#fff}
.subhero{min-height:440px;position:relative;display:flex;align-items:center;color:#fff;background:var(--bg) center/cover}.subhero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,20,32,.96),rgba(3,20,32,.66) 65%,rgba(3,20,32,.25))}.subhero .wrap{position:relative;z-index:1;padding:65px 0}.subhero p{max-width:680px;line-height:1.65;color:#dce5e9}
.when{background:var(--cream);padding:85px 0}.when-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px}.when-list{list-style:none;margin:0;padding:0;border-top:1px solid #c8c9c5}.when-list li{padding:16px 0;border-bottom:1px solid #c8c9c5;font:500 18px "Playfair Display",serif}.when-list li:before{content:"→";color:var(--gold);margin-right:14px}
.legal{text-align:center;font-size:9px;color:#7e8d95;padding:20px}.site-footer{padding:30px 5vw;display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#6d7d86}
@media(max-width:980px){.nav a:not(.talk){display:none}.service-tiles{grid-template-columns:1fr 1fr}.section-head,.when-grid{grid-template-columns:1fr;gap:28px}.cap-grid{grid-template-columns:1fr 1fr}.cap:nth-child(n){padding-left:20px;padding-right:20px}.founder{grid-template-columns:1fr;text-align:center}.portrait{margin:auto}.stats{grid-template-columns:1fr 1fr;gap:25px}.stat{border:0}}
@media(max-width:650px){.site-header{height:76px;padding:0 18px}.brand{align-items:flex-start;min-width:0}.brand img{width:52px}.brand b{font-size:16px}.brand small{font-size:5px}.nav .talk{padding:11px 12px}.wrap{width:min(100% - 36px,1180px)}.hero{min-height:560px}.hero h1{font-size:49px}.service-tiles{grid-template-columns:1fr;width:calc(100% - 28px)}.tile{height:260px}.stats{grid-template-columns:1fr 1fr}.intro{grid-template-columns:1fr}.intro-photo{height:300px}.intro-copy{padding:55px 28px}.cap-grid{grid-template-columns:1fr}.contact-links{flex-direction:column}.site-footer{flex-direction:column;gap:16px;text-align:center}}

.founder-band{background:#fff}
.founder-band .portrait{width:190px;height:190px;flex:0 0 190px}
.founder-band .portrait img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
@media(max-width:650px){
  .founder-band .portrait{width:150px;height:150px;flex-basis:150px}
}

/* v11 portrait correction — hard sizing on every page */
.founder-band{background:#fff;padding:68px 0}
.founder-band .founder{
  display:grid;
  grid-template-columns:170px minmax(0,650px);
  justify-content:center;
  gap:52px;
  align-items:center;
}
.founder-band .portrait{
  width:170px !important;
  height:170px !important;
  min-width:170px;
  max-width:170px;
  min-height:170px;
  max-height:170px;
  margin:0;
  overflow:hidden;
  border-radius:50%;
  border:3px solid var(--navy);
  box-shadow:0 12px 30px rgba(7,30,48,.13);
}
.founder-band .portrait img{
  display:block !important;
  width:170px !important;
  height:170px !important;
  min-width:170px !important;
  max-width:170px !important;
  min-height:170px !important;
  max-height:170px !important;
  object-fit:cover !important;
  object-position:center center;
  border-radius:50% !important;
}
.founder-band .founder-copy h2{
  font:500 38px/1.08 "Playfair Display",serif;
  margin:8px 0 14px;
}
.founder-band .founder-copy p{
  margin:0 0 9px;
  max-width:650px;
}
.founder-location{
  font-size:10px !important;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#7a8a93 !important;
}

/* Safety: legacy service-page image can never render huge if cached HTML appears */
.dark-feature .feature-img,
.feature-grid .feature-img{
  width:170px !important;
  height:170px !important;
  max-width:170px !important;
  max-height:170px !important;
  object-fit:cover !important;
  border-radius:50% !important;
}

@media(max-width:700px){
  .founder-band .founder{grid-template-columns:1fr;text-align:center;gap:28px}
  .founder-band .portrait{margin:auto}
  .founder-band .founder-copy h2{font-size:32px}
}
