/* Executive editorial design — private redesign proposal. Scoped .e-site to avoid affecting legacy pages. */
:root { color-scheme: light; }
.e-site {
  --paper:#f6f3ec; --white:#fffefa; --ink:#1b2826; --muted:#64716c;
  --forest:#172f2a; --forest-deep:#10231f; --copper:#b28b5e; --border:#dcded6;
  --serif: "Iowan Old Style","Baskerville","Palatino Linotype",Georgia,serif;
  --sans: "Avenir Next","Helvetica Neue",Arial,sans-serif;
  margin:0; background:var(--paper); color:var(--ink); font:16px/1.6 var(--sans);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
.e-site *, .e-site *::before, .e-site *::after { box-sizing:border-box; }
.e-site a { color:inherit; text-underline-offset:4px; }
.e-site img { max-width:100%; display:block; }
.e-site button, .e-site a { -webkit-tap-highlight-color:transparent; }
.e-site a:focus-visible,.e-site summary:focus-visible { outline:3px solid var(--copper); outline-offset:4px; }
.e-site .e-wrap { max-width:1200px; margin:auto; padding-inline:clamp(20px,5vw,64px); }
.e-site .e-skip { position:absolute; top:-200px; left:12px; padding:12px; background:white; z-index:900; }
.e-site .e-skip:focus { top:12px; }
.e-site .e-header { position:sticky; top:0; z-index:100; background:rgba(246,243,236,.96); border-bottom:1px solid var(--border); backdrop-filter:blur(16px); }
.e-site .e-header-row { display:flex; align-items:center; gap:24px; justify-content:space-between; min-height:82px; }
.e-site .e-identity { display:flex; flex-direction:column; text-decoration:none; flex-shrink:0; line-height:1.15; }
.e-site .e-identity strong { font-family:var(--serif); font-size:1.42rem; letter-spacing:-.02em; font-weight:600; }
.e-site .e-identity small { color:var(--muted); font-size:.65rem; letter-spacing:.12em; margin-top:6px; text-transform:uppercase; }
.e-site .e-nav { display:flex; gap:clamp(13px,1.6vw,27px); align-items:center; }
.e-site .e-nav a { font-size:.82rem; font-weight:600; text-decoration:none; white-space:nowrap; }
.e-site .e-nav a:hover,.e-site .e-small-link:hover { color:#946c3d; }
.e-site .e-nav-actions { display:flex; gap:14px; align-items:center; flex-shrink:0; }
.e-site .e-small-link { font-size:.75rem; font-weight:600; text-decoration:none; }
.e-site .e-header-cta { display:inline-flex; justify-content:center; align-items:center; background:var(--forest); color:white; padding:11px 18px; font-size:.8rem; font-weight:700; text-decoration:none; }
.e-site .e-header-cta:hover { background:#29483e; }
.e-site .e-menu { display:none; position:relative; }
.e-site .e-menu summary { list-style:none; cursor:pointer; font-size:.88rem; font-weight:700; border:1px solid var(--border); padding:10px 15px; }
.e-site .e-menu summary::-webkit-details-marker { display:none; }
.e-site .e-mobile-nav { position:absolute; right:0; top:calc(100% + 10px); background:var(--white); border:1px solid var(--border); min-width:min(290px,85vw); box-shadow:0 22px 50px #172f2a25; padding:12px; display:grid; gap:0; }
.e-site .e-mobile-nav a { padding:11px 12px; text-decoration:none; border-bottom:1px solid var(--border); font-weight:600; font-size:.93rem; }
.e-site .e-mobile-nav a:last-child { border:0; }
.e-site .e-hero { position:relative; overflow:hidden; background:var(--paper); }
.e-site .e-hero::after { content:"";position:absolute; right:-10vw;bottom:-210px;width:620px;height:620px;border:1px solid #b28b5e21;border-radius:50%;pointer-events:none; }
.e-site .e-hero-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr); gap:clamp(30px,5vw,80px); align-items:center; padding-block:clamp(66px,9vw,124px) clamp(54px,8vw,108px); }
.e-site .e-overline { display:block; color:#8d6c42; text-transform:uppercase; letter-spacing:.17em; font-size:.68rem; font-weight:700; margin:0 0 26px; }
.e-site h1,.e-site h2,.e-site h3,.e-site p { margin-top:0; }
.e-site h1,.e-site h2,.e-site h3 { font-family:var(--serif); font-weight:500; letter-spacing:-.037em; line-height:1.1; }
.e-site h1 { font-size:clamp(2.65rem,5.15vw,5.15rem); max-width:15ch; margin-bottom:28px; }
.e-site h1 em { font-style:normal; color:#94704a; }
.e-site h2 { font-size:clamp(2.2rem,3.45vw,3.9rem); max-width:17ch; margin-bottom:25px; }
.e-site h3 { font-size:clamp(1.4rem,2.15vw,1.95rem); margin-bottom:15px; }
.e-site .e-lead { color:#41504b; font-size:clamp(1.08rem,1.5vw,1.27rem); line-height:1.72; max-width:660px; margin-bottom:32px; }
.e-site .e-role { max-width:600px; font-size:.9rem; color:var(--muted); margin:24px 0 0; }
.e-site .e-actions { display:flex; align-items:center; gap:22px; flex-wrap:wrap; }
.e-site .e-button { display:inline-flex; align-items:center; justify-content:space-between; gap:30px; background:var(--forest); color:#fff; text-decoration:none; padding:17px 22px; min-height:58px; font-size:.91rem; font-weight:700; transition:transform .2s,background .2s; }
.e-site .e-button:hover { background:#29483e; transform:translateY(-2px); }
.e-site .e-button-light { background:var(--white); color:var(--forest); }
.e-site .e-button-light:hover { background:#f1eadc; color:var(--forest); }
.e-site .e-text-link { font-weight:700; font-size:.91rem; text-decoration:none; border-bottom:1px solid var(--copper); padding-bottom:5px; }
.e-site .e-text-link:hover { color:#8d6c42; }
.e-site .e-portrait { position:relative; margin:0; min-height:520px; padding:0 25px 22px 0; }
.e-site .e-portrait::before { content:""; position:absolute; inset:45px 0 0 36px; background:#d5d6cb; }
.e-site .e-portrait img { position:relative; object-fit:cover; object-position:50% 23%; width:100%; height:500px; filter:saturate(.78) contrast(1.05); }
.e-site .e-portrait figcaption { position:absolute; bottom:0; right:0; background:var(--forest); color:#fff; padding:17px 24px; min-width:230px; font-size:.73rem; letter-spacing:.04em; }
.e-site .e-portrait figcaption strong { display:block; font-family:var(--serif); font-size:1.2rem; font-weight:500; letter-spacing:0; }
.e-site .e-proof { background:var(--forest); color:#fff; }
.e-site .e-proof-grid { display:grid; grid-template-columns:1fr 1fr 1fr; }
.e-site .e-proof-item { padding:38px 35px 40px 0; }
.e-site .e-proof-item+.e-proof-item { border-left:1px solid #ffffff30; padding-left:35px; }
.e-site .e-proof-number { display:block; font-family:var(--serif);font-size:2.7rem; letter-spacing:-.035em; line-height:1.1; color:#e0c19b; }
.e-site .e-proof-item p { color:#dae3dc; font-size:.83rem; margin:9px 0 0; line-height:1.55; }
.e-site .e-section { padding-block:clamp(76px,9vw,122px); border-bottom:1px solid var(--border); }
.e-site .e-section-intro { display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(25px,7vw,130px); align-items:start; margin-bottom:42px; }
.e-site .e-section-intro h2 { margin:0; }
.e-site .e-section-intro p:not(.e-overline) { color:var(--muted); font-size:1.08rem; line-height:1.8; margin:12px 0 0; }
.e-site .e-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.e-site .e-pain { padding:32px; background:var(--white); border:1px solid var(--border); min-height:292px; display:flex; flex-direction:column; }
.e-site .e-pain .e-card-num { color:#b28b5e; font-size:.7rem; font-weight:700; letter-spacing:.13em; margin-bottom:48px; }
.e-site .e-pain p { font-size:.94rem; color:var(--muted); line-height:1.7; margin:0; }
.e-site .e-dark { background:var(--forest-deep); color:var(--white); }
.e-site .e-dark .e-overline { color:#d4b78f; }
.e-site .e-dark .e-section-intro p:not(.e-overline) { color:#bccac4; }
.e-site .e-case-layout { display:grid; grid-template-columns:1fr 1fr; gap:clamp(50px,9vw,160px); align-items:center; }
.e-site .e-case-visual { border:1px solid #ffffff35; min-height:400px; padding:34px; background:radial-gradient(circle at 100% 0,#48675c60,transparent 55%),#19342d; }
.e-site .e-case-visual .e-visual-label { font-size:.68rem; letter-spacing:.16em; text-transform:uppercase; color:#d6bd96; }
.e-site .e-visual-number { font-family:var(--serif); font-size:clamp(5rem,10vw,9rem); line-height:1; letter-spacing:-.06em; margin:54px 0 16px; color:white; }
.e-site .e-case-visual p { color:#dae3dc; max-width:290px; }
.e-site .e-visual-rule { height:1px; background:#ffffff38; margin-top:50px; }
.e-site .e-case-layout .e-lead { color:#c5d2cd; }
.e-site .e-note { font-size:.78rem; color:#aab8b1; line-height:1.7; margin:26px 0 0; }
.e-site .e-case-layout .e-text-link { color:#fff; border-color:#d6bd96; }
.e-site .e-flow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; counter-reset:flow; }
.e-site .e-flow-step { border-top:2px solid var(--copper); padding:25px 10px 20px 0; }
.e-site .e-flow-step .e-flow-number { font-size:.75rem; font-weight:700; color:#9c7950; margin-bottom:35px; }
.e-site .e-flow-step p { font-size:.9rem; line-height:1.7; color:var(--muted); margin:0; }
.e-site .e-flow-step h3 { font-size:1.45rem; margin-bottom:11px; }
.e-site .e-profile { display:grid; grid-template-columns:1fr 1.1fr; gap:clamp(45px,9vw,140px); align-items:center; }
.e-site .e-profile p { color:var(--muted); line-height:1.85; font-size:1.02rem; }
.e-site .e-profile-quote { border-left:3px solid var(--copper); padding:20px 0 20px 35px; font-family:var(--serif);font-size:clamp(1.75rem,2.5vw,2.7rem); line-height:1.35; letter-spacing:-.025em; }
.e-site .e-profile-quote small { display:block; font:700 .7rem/1.5 var(--sans); letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin-top:22px; }
.e-site .e-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr));gap:14px; }
.e-site .e-option { background:var(--white); border:1px solid var(--border); padding:30px; }
.e-site .e-option span { display:block;color:#9c7950;font-size:.74rem;font-weight:700;margin-bottom:33px; }
.e-site .e-option p { color:var(--muted);font-size:.9rem;line-height:1.7;min-height:85px; }
.e-site .e-option strong { display:block; border-top:1px solid var(--border); padding-top:20px; font-size:.87rem; }
.e-site .e-reading { display:grid;grid-template-columns:repeat(2,1fr);gap:14px; }
.e-site .e-reading a { display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--white);border:1px solid var(--border);text-decoration:none;padding:25px;transition:border-color .2s,transform .2s; }
.e-site .e-reading a:hover { border-color:var(--copper);transform:translateY(-2px); }
.e-site .e-reading b { display:block;font-family:var(--serif);font-size:1.4rem;font-weight:500;line-height:1.2; }
.e-site .e-reading small { display:block;color:var(--muted);font-size:.8rem;margin-top:9px; }
.e-site .e-reading .e-arrow { color:#9c7950;font-size:1.35rem; }
.e-site .e-contact { background:#dec9ad; padding-block:clamp(75px,9vw,120px); }
.e-site .e-contact-grid { display:grid; grid-template-columns:1.15fr .85fr;gap:60px;align-items:center; }
.e-site .e-contact h2 { max-width:18ch; }
.e-site .e-contact .e-lead { max-width:600px; }
.e-site .e-contact-address { padding:38px;background:#f5eadb; }
.e-site .e-contact-address p { font-size:.83rem;color:var(--muted);margin:0 0 20px; }
.e-site .e-contact-address a { display:block;margin:15px 0;font-size:1rem;font-weight:700;text-decoration:none;border-bottom:1px solid #d8c6ac;padding-bottom:15px;word-break:break-word; }
.e-site .e-footer { background:var(--forest-deep);color:#fff;padding-block:50px 38px; }
.e-site .e-footer-columns { display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px;margin-bottom:50px; }
.e-site .e-footer h2 {font-size:1.6rem;margin-bottom:14px;}
.e-site .e-footer p {font-size:.85rem;color:#abbab1;max-width:380px;}
.e-site .e-footer h3 {font:700 .72rem/1.5 var(--sans);text-transform:uppercase;letter-spacing:.14em;color:#d7bc99;margin-bottom:20px;}
.e-site .e-footer a {display:block;text-decoration:none;color:#d6e0d9;font-size:.88rem;margin-bottom:12px;}
.e-site .e-footer a:hover {color:#e1bf94;}
.e-site .e-footer-bottom { border-top:1px solid #ffffff30;padding-top:25px;font-size:.77rem;color:#abbab1;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap; }
.e-site .e-hub-hero { padding-block:85px 75px; }
.e-site .e-hub-hero h1 { max-width:16ch; }
.e-site .e-hub-lead { color:var(--muted);font-size:1.18rem;max-width:650px;line-height:1.8; }
.e-site .e-hub-section { padding-block:65px; border-top:1px solid var(--border); }
.e-site .e-hub-section h2 { max-width:none; }
.e-site .e-hub-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.e-site .e-hub-tile {display:block;padding:32px;background:var(--white);border:1px solid var(--border);text-decoration:none;}
.e-site .e-hub-tile:hover { border-color:var(--copper); }
.e-site .e-hub-tile span {color:#9c7950;letter-spacing:.13em;font-weight:700;font-size:.72rem;}
.e-site .e-hub-tile h3 {font-size:1.8rem;margin:18px 0;}
.e-site .e-hub-tile p {font-size:.96rem;color:var(--muted);line-height:1.7;}
.e-site .e-hub-breadcrumb {padding-top:26px;font-size:.83rem;color:var(--muted);}
.e-site .e-hub-breadcrumb a {text-decoration:none;}
@media (max-width:1060px) {
  .e-site .e-nav {display:none;}
  .e-site .e-menu {display:block;}
  .e-site .e-header-cta {display:none;}
  .e-site .e-hero-grid {grid-template-columns:1.1fr .9fr;gap:32px;}
  .e-site .e-portrait {min-height:440px;}
  .e-site .e-portrait img {height:415px;}
}
@media (max-width:760px) {
  .e-site .e-header-row {min-height:70px;}
  .e-site .e-identity strong {font-size:1.15rem;}
  .e-site .e-hero-grid,.e-site .e-section-intro,.e-site .e-case-layout,.e-site .e-profile,.e-site .e-contact-grid {grid-template-columns:1fr;}
  .e-site .e-hero-grid {padding-block:58px 65px;gap:48px;}
  .e-site h1 {font-size:clamp(2.55rem,9vw,4rem);}
  .e-site .e-portrait {max-width:420px;min-height:0;padding-right:16px;}
  .e-site .e-portrait img {height:360px;}
  .e-site .e-proof-grid {grid-template-columns:1fr;}
  .e-site .e-proof-item {padding:24px 0;}
  .e-site .e-proof-item+.e-proof-item {border-left:0;border-top:1px solid #ffffff30;padding-left:0;}
  .e-site .e-card-grid,.e-site .e-options,.e-site .e-flow,.e-site .e-footer-columns,.e-site .e-hub-grid {grid-template-columns:1fr;}
  .e-site .e-pain {min-height:0;}
  .e-site .e-pain .e-card-num {margin-bottom:20px;}
  .e-site .e-option p {min-height:0;}
  .e-site .e-reading {grid-template-columns:1fr;}
  .e-site .e-footer-columns {gap:25px;}
}
@media (prefers-reduced-motion:reduce) {
  .e-site *, .e-site *::before, .e-site *::after {scroll-behavior:auto!important;transition:none!important;}
}

.e-site [id] { scroll-margin-top:95px; }
