:root{--navy:#0b2134;--navy2:#102b42;--gold:#ae8958;--ink:#14273c;--cream:#f8f7f4}*{box-sizing:border-box}html{scroll-behavior:smooth}body.executive{margin:0;background:var(--cream);font-family:'DM Sans',Arial,sans-serif;color:var(--ink);font-size:16px;line-height:1.7}body.executive a{color:inherit}body.executive .shell{width:min(1180px,calc(100% - 48px));margin:auto}body.executive h1,body.executive h2{font-family:'Libre Baskerville',Georgia,serif;font-weight:400;line-height:1.32;letter-spacing:-.035em}body.executive h2{font-size:clamp(27px,3vw,41px);margin:0 0 22px}body.executive h3{font-size:18px;line-height:1.35;margin:0 0 13px}body.executive p{margin:0 0 17px}body.executive .eyebrow{color:var(--gold);font-weight:700;font-size:12px;letter-spacing:.19em;margin-bottom:17px}body.executive .top{position:sticky;top:0;background:#fff;z-index:50;box-shadow:0 1px 12px #081a2910}body.executive .nav-wrap{display:flex;align-items:center;min-height:84px;gap:18px}body.executive .wordmark{font:normal 29px Georgia,serif;white-space:nowrap;text-decoration:none;color:var(--navy)}.nav-divider{height:34px;width:1px;background:#c6a47d}.brand-descriptor{font-size:11px;font-weight:700;letter-spacing:.03em;line-height:1.3;white-space:nowrap}.brand-descriptor small{display:block;font-size:10px;font-weight:400;color:#647080}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:18px}.desktop-nav a{font-size:12px;text-decoration:none;white-space:nowrap}.desktop-nav a:hover{color:var(--gold)}.desktop-nav .nav-cta{padding:10px 16px;background:var(--gold);color:#fff;border-radius:3px}.mobile-nav{display:none}.executive-hero{position:relative;overflow:hidden;min-height:540px;background:var(--navy);color:#fff}.hero-bg{position:absolute;inset:-20px;background:url('/assets/images/oscar-ruiz-original.png') center 35%/cover no-repeat;filter:blur(19px) brightness(.8);opacity:.58}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#071b2f 0%,#071b2ff2 41%,#071b2f50 75%,#071b2f18)}.hero-content{position:relative;min-height:540px;display:flex;align-items:center}.hero-text{position:relative;z-index:2;width:61%;padding:65px 0}.executive-hero h1{font-size:clamp(52px,5.4vw,79px);margin:0 0 12px}.hero-headline{font:normal clamp(23px,2.6vw,36px)/1.4 'Libre Baskerville',Georgia,serif;max-width:650px}.hero-pillars{font-size:12px;font-weight:700;letter-spacing:.14em;color:#d7ad74;margin-top:27px!important}.hero-summary{max-width:510px;font-size:16px;color:#f0f0ef}.hero-photo{position:absolute;right:-20px;bottom:0;height:96%;width:44%;object-fit:cover;object-position:center 16%;mask-image:linear-gradient(90deg,transparent 0%,#000 25%);border:0}.executive .button.gold-button{display:inline-block;padding:12px 23px;background:var(--gold);color:#fff;text-decoration:none;border-radius:3px;font-weight:600;font-size:14px;transition:background .2s}.executive .button.gold-button:hover{background:#987346}.executive main>section:not(.executive-hero){padding:76px 0}.profile-intro{background:#fff}.intro-grid{display:grid;grid-template-columns:38% 1fr;gap:8%}.profile-intro .copy .copy{display:block}.executive .copy p{max-width:790px}.service-section{background:#f8f7f4}.experience-section{background:var(--navy);color:#fff}.experience-section .executive-tile{border-color:#ffffff33;background:#ffffff08}.experience-section .executive-tile p{color:#d5e0e8}.collab-section{background:#fff}.method-section{background:#f3f1ed}.contact-section{background:var(--navy);color:#fff}.executive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:35px}.executive-tile{border:1px solid #dcdcd8;border-top:2px solid var(--gold);padding:25px 27px;background:#fff;min-width:0}.executive-tile p{color:#3b4b5b}.experience-section .executive-tile{background:#18344b;color:#fff}.executive .foot{background:#07192b;color:#d5dce3;padding:26px 0}.executive .foot .shell{display:flex;justify-content:space-between;gap:20px}.executive .foot a{color:#e6d0b3}.executive .contact-section .shell{max-width:850px}.executive .contact-section .copy{max-width:850px}
@media(max-width:1080px){.desktop-nav{gap:11px}.desktop-nav a{font-size:11px}.brand-descriptor{display:none}.nav-divider{display:none}.hero-photo{width:45%;opacity:.95}.hero-text{width:66%}}
@media(max-width:780px){body.executive .shell{width:min(100% - 36px,620px)}body.executive .nav-wrap{min-height:70px}.desktop-nav{display:none}.mobile-nav{display:block;margin-left:auto;position:relative}.mobile-nav summary{list-style:none;cursor:pointer;font-size:23px;padding:4px 9px;border:1px solid #e1e3e5;border-radius:4px}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;right:0;top:47px;background:#fff;box-shadow:0 12px 25px #0002;min-width:225px;padding:12px;display:grid;gap:5px}.mobile-nav nav a{padding:9px 12px;text-decoration:none;font-size:14px}.executive-hero,.hero-content{min-height:670px}.hero-content{align-items:flex-end}.hero-photo{width:100%;height:68%;right:0;top:0;bottom:auto;object-fit:contain;object-position:top center;mask-image:linear-gradient(180deg,#000 0%,#000 63%,transparent 100%)}.hero-shade{background:linear-gradient(180deg,#071b2f22 0%,#071b2f44 28%,#071b2fe8 54%,#071b2f 80%)}.hero-text{width:100%;padding:340px 0 36px}.executive-hero h1{font-size:44px}.hero-headline{font-size:24px}.hero-pillars{font-size:10px}.hero-summary{font-size:14px}.executive main>section:not(.executive-hero){padding:52px 0}.intro-grid,.executive-grid{grid-template-columns:1fr;gap:15px}.executive-tile{padding:23px}.executive .foot .shell{display:block}}

/* OR-WEB-V1.1: mobile hero flow and sticky navigation anchor clearance. */
html{scroll-padding-top:105px}
body.executive main section[id]{scroll-margin-top:105px}
@media(max-width:780px){
  html{scroll-padding-top:90px}
  body.executive main section[id]{scroll-margin-top:90px}
  .executive-hero,.hero-content{min-height:0}
  .hero-content{display:flex;flex-direction:column;align-items:stretch}
  .hero-photo{position:relative;order:-1;inset:auto;width:100%;height:auto;max-height:none;display:block;object-fit:contain;object-position:center top;mask-image:none;opacity:1}
  .hero-text{width:100%;padding:28px 0 40px}
  .hero-text>.eyebrow{margin-bottom:17px}
  .hero-shade{pointer-events:none;background:linear-gradient(180deg,#071b2f22 0%,#071b2f 100%)}
}
