:root{--deep:#071c13;--green:#0b261b;--green2:#164c36;--green3:#2f6b55;--gold:#c8a66a;--gold2:#ead5a7;--cream:#f6f1e7;--paper:#fff;--line:#dddcd5;--ink:#1f2923;--muted:#657069;--sans:"Avenir Next",Avenir,"Segoe UI",Arial,sans-serif;--serif:Georgia,"Times New Roman",serif;--wrap:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f6f2;color:var(--ink);font-family:var(--sans);line-height:1.7;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit}.wrap{width:min(var(--wrap),calc(100% - 42px));margin-inline:auto}.skip{position:fixed;left:12px;top:-70px;z-index:100;padding:10px 14px;background:#fff;color:var(--green)}.skip:focus{top:12px}.stage-banner{display:flex;justify-content:center;align-items:center;min-height:30px;padding:6px 18px;background:linear-gradient(90deg,var(--deep),var(--green2),var(--deep));color:#f6f1e7;border-bottom:1px solid rgba(234,213,167,.4);font-size:9px;font-weight:850;letter-spacing:.08em;text-align:center;text-transform:uppercase}.site-head{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid #e7eae7}.site-nav{min-height:78px;display:flex;align-items:center;gap:25px}.site-nav img{width:245px}.site-nav nav{display:flex;align-items:center;gap:24px;margin-left:auto}.site-nav a{text-decoration:none;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.site-nav .cta{padding:12px 16px;background:var(--green);color:#fff;border:1px solid var(--green)}.insights-hero{position:relative;padding:90px 0 82px;background:linear-gradient(120deg,rgba(7,28,19,.96),rgba(18,63,44,.9)),url('../hero-01-miami-skyline.jpg') center/cover;color:#fff;overflow:hidden}.insights-hero:after{content:"";position:absolute;right:-140px;top:-180px;width:560px;height:560px;border:1px solid rgba(234,213,167,.22);border-radius:50%;box-shadow:0 0 0 90px rgba(234,213,167,.035),0 0 0 180px rgba(234,213,167,.02)}.insights-hero .wrap{position:relative;z-index:1}.eyebrow{display:block;color:var(--gold2);font-size:9px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}.insights-hero h1{max-width:850px;margin:12px 0 18px;font-family:var(--serif);font-size:clamp(42px,6vw,76px);font-weight:500;line-height:1.02}.insights-hero p{max-width:720px;margin:0;color:#d9e5dd;font-size:14px}.library{padding:62px 0 85px}.library-tools{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:26px}.search{position:relative;flex:1;max-width:480px}.search input{width:100%;height:46px;padding:0 46px 0 14px;border:1px solid #ccd4ce;background:#fff;color:var(--ink)}.search span{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:var(--green3)}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{min-height:38px;padding:0 13px;border:1px solid #aab5ad;background:#fff;color:var(--green);font-size:8px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.filters button.is-active{background:var(--green);color:#fff;border-color:var(--green)}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.article-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);box-shadow:0 12px 28px rgba(7,28,19,.06);transition:.22s ease}.article-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(7,28,19,.11)}.article-card__art{height:180px;display:flex;align-items:flex-end;padding:20px;background:linear-gradient(135deg,var(--green),var(--green3));color:var(--gold2);background-size:cover;background-position:center}.article-card__art span{font-family:var(--serif);font-size:44px}.article-card__body{display:flex;flex-direction:column;flex:1;padding:24px}.article-meta{display:flex;gap:10px;flex-wrap:wrap;color:#8e6e38;font-size:8px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.article-card h2{margin:10px 0 12px;color:var(--green);font-family:var(--serif);font-size:24px;font-weight:500;line-height:1.12}.article-card p{margin:0;color:var(--muted);font-size:10px}.article-card a{display:inline-flex;align-items:center;gap:10px;margin-top:auto;padding-top:20px;color:var(--green3);font-size:8px;font-weight:900;letter-spacing:.075em;text-decoration:none;text-transform:uppercase}.no-results{grid-column:1/-1;padding:50px;background:#fff;border:1px dashed #bfc8c1;text-align:center;color:var(--muted)}.site-footer{padding:48px 0;background:var(--deep);color:#d7e1da;text-align:center}.site-footer img{width:190px;margin:0 auto 15px}.site-footer p{margin:6px 0;font-size:9px}.site-footer a{color:var(--gold2)}
/* Article */
.article-hero{padding:70px 0 55px;background:linear-gradient(135deg,var(--deep),var(--green2));color:#fff}.article-hero .wrap{max-width:940px}.article-hero h1{margin:12px 0 16px;font-family:var(--serif);font-size:clamp(38px,6vw,67px);font-weight:500;line-height:1.03}.article-hero p{max-width:780px;margin:0;color:#dce6df;font-size:14px}.article-meta--hero{margin-top:20px;color:var(--gold2)}.article-layout{width:min(1100px,calc(100% - 42px));margin:0 auto;padding:54px 0 85px;display:grid;grid-template-columns:250px minmax(0,1fr);gap:48px}.article-sidebar{position:sticky;top:110px;align-self:start}.article-sidebar a{display:block;padding:8px 10px;border-left:2px solid #d8d1c4;color:#637067;text-decoration:none;font-size:9px}.article-sidebar a:hover{border-left-color:var(--gold);color:var(--green)}.article-sidebar strong{display:block;margin-bottom:10px;color:var(--green);font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.article-body{min-width:0;padding:40px 48px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 38px rgba(7,28,19,.07)}.article-body .key{margin:0 0 30px;padding:20px 23px;background:linear-gradient(135deg,var(--green),var(--green3));color:#fff;border-left:5px solid var(--gold)}.article-body .key strong{display:block;margin-bottom:5px;color:var(--gold2);font-size:8px;letter-spacing:.1em;text-transform:uppercase}.article-body h2{scroll-margin-top:110px;margin:38px 0 12px;color:var(--green);font-family:var(--serif);font-size:31px;font-weight:500;line-height:1.15}.article-body h3{margin:28px 0 10px;color:var(--green2);font-family:var(--serif);font-size:24px;font-weight:500}.article-body p,.article-body li{color:#404b44;font-size:12px;line-height:1.85}.article-body ul{padding-left:22px}.article-body blockquote{margin:24px 0;padding:18px 20px;background:var(--cream);border-left:4px solid var(--gold);color:#49554d}.article-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px;padding-top:24px;border-top:1px solid var(--line)}.article-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 17px;background:var(--green);color:#fff;text-decoration:none;font-size:8px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.article-actions a.secondary{background:#fff;color:var(--green);border:1px solid #9fac9f}.article-error{max-width:760px;margin:80px auto;padding:45px;background:#fff;border:1px solid var(--line);text-align:center}.article-error h1{color:var(--green);font-family:var(--serif);font-weight:500}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid rgba(200,166,106,.55);outline-offset:3px}
@media(max-width:980px){.article-grid{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:1fr}.article-sidebar{position:static;display:none}}
@media(max-width:720px){.wrap{width:min(100% - 28px,var(--wrap))}.site-nav{min-height:68px}.site-nav img{width:205px}.site-nav nav a:not(.cta){display:none}.insights-hero{padding:70px 0 62px}.library{padding:46px 0 65px}.library-tools{align-items:stretch;flex-direction:column}.search{max-width:none}.filters{flex-wrap:nowrap;overflow:auto;padding-bottom:4px}.filters button{flex:0 0 auto}.article-grid{grid-template-columns:1fr}.article-layout{width:min(100% - 28px,1100px);padding-top:28px}.article-body{padding:28px 22px}.article-hero{padding:55px 0 42px}.article-body h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.article-card{transition:none}}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.library-count{min-height:20px;margin:-10px 0 20px;color:#737c76;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.article-card[hidden],.no-results[hidden]{display:none!important}.article-disclaimer{margin-top:34px;padding:18px 20px;background:#f5f2ea;border:1px solid #ddd4c4;color:#5c655f;font-size:10px;line-height:1.65}.article-disclaimer strong{color:var(--green)}.article-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 17px;background:#fff;color:var(--green);border:1px solid #9fac9f;font-family:inherit;font-size:8px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;cursor:pointer}.article-actions button:hover{background:var(--cream)}

/* V6.2.0 production hardening */
.site-nav a:focus-visible,input:focus-visible,button:focus-visible{outline:3px solid rgba(200,166,106,.62);outline-offset:3px}


/* V6.2.3 logo geometry correction */
.site-nav img{
  height:auto !important;
  object-fit:contain;
}
@media(max-width:720px){
  .site-nav{
    position:relative;
    justify-content:flex-end;
  }
  .site-nav > a:first-child{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:min(58vw,210px);
    display:flex;
    justify-content:center;
    align-items:center;
  }
  .site-nav > a:first-child img{
    width:100% !important;
    max-width:210px;
    max-height:42px;
    margin:0 auto;
  }
}


/* V6.2.4 mobile header centering correction */
@media(max-width:720px){
  .nav,
  .site-nav{
    display:grid !important;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    position:relative;
  }

  .brand,
  .site-nav > a:first-child{
    position:static !important;
    transform:none !important;
    left:auto !important;
    top:auto !important;
    grid-column:2;
    justify-self:center;
    width:min(58vw,210px);
    margin:0 !important;
  }

  .brand img,
  .site-nav > a:first-child img{
    display:block;
    width:100% !important;
    height:auto !important;
    max-width:210px;
    max-height:42px;
    margin:0 auto !important;
    object-fit:contain;
  }

  .menu-button,
  .site-nav .menu-button{
    grid-column:3;
    justify-self:end;
    margin-left:0 !important;
  }
}
