/* Original research pages: editorial reading rhythm, hand-built data motifs. */
.primary-nav a[aria-current="page"] { color: var(--gold-light); }
.home-articles { padding-top: 9px; padding-bottom: 93px; }
.home-articles .section-title-row { margin-bottom: 28px; }
.home-articles h2 { max-width: 650px; }
.home-article-list { border-top: 1px solid rgba(242,181,68,.48); }
.home-article-list a { display: grid; grid-template-columns: 190px 1fr 26px; align-items: center; gap: 25px; min-height: 97px; border-bottom: 1px solid var(--line); transition: padding .2s, background .2s; }
.home-article-list a:hover { padding-inline: 14px; background: #0e2a37; }
.home-article-list span { color: #84a7a6; font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.home-article-list strong { font-size: clamp(17px,2vw,26px); font-weight: 600; line-height: 1.25; letter-spacing: -.03em; }
.feature-copy .feature-email-note { margin: 20px 0 0; color: #a8c3bf; font-size: 12px; line-height: 1.6; }.feature-email-note a { color: var(--gold-light); text-decoration: underline; text-underline-offset: 3px; }
.home-article-list b { color: var(--gold-light); font-size: 22px; font-weight: 400; }
.coming-hero { padding-top: clamp(85px,10vw,140px); padding-bottom: clamp(95px,12vw,155px); }
.coming-hero h1 { max-width: 1010px; margin: 0 0 23px; font-size: clamp(51px,7.5vw,102px); line-height: 1.03; letter-spacing: -.075em; }.coming-hero h1 em { color: var(--gold); font-style: normal; }
.coming-hero > p:not(.eyebrow) { max-width: 620px; color: #b7ccc9; font-size: 17px; line-height: 1.75; }
.privacy-wrap { padding-top: clamp(75px,9vw,120px); padding-bottom: 110px; }.privacy-wrap h1 { margin: 0 0 10px; font-size: clamp(51px,7vw,91px); letter-spacing: -.07em; line-height: 1.05; }.privacy-updated { color: #83aaa9; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }.privacy-content { max-width: 800px; margin-top: 55px; border-top: 1px solid rgba(242,181,68,.48); }.privacy-content section { padding: 27px 0; border-bottom: 1px solid var(--line); }.privacy-content h2 { margin: 0 0 12px; font-size: 23px; letter-spacing: -.035em; }.privacy-content p { margin: 0; color: #bbcfcb; font-size: 14px; line-height: 1.8; }.privacy-content a { color: var(--gold-light); text-decoration: underline; text-underline-offset: 3px; }.privacy-content code { color: var(--gold-light); }
.coming-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }.coming-features { display: grid; grid-template-columns: repeat(4,1fr); gap: 15px; margin-top: 95px; padding-top: 20px; border-top: 1px solid rgba(242,181,68,.5); color: #8eb0ae; font-size: 10px; font-weight: 700; letter-spacing: .13em; }
.articles-intro { padding-top: clamp(92px, 11vw, 152px); padding-bottom: 48px; }
.articles-intro h1 { max-width: 930px; margin: 0 0 27px; font-size: clamp(48px, 7.4vw, 104px); line-height: 1.02; letter-spacing: -.075em; }
.articles-intro h1 em { color: var(--gold); font-style: normal; }
.articles-intro > p:not(.eyebrow) { max-width: 670px; margin-bottom: 50px; color: #b6cdca; font-size: clamp(16px, 1.35vw, 19px); line-height: 1.7; }
.articles-intro-cta { display: flex; align-items: center; gap: 13px; width: max-content; max-width: 100%; margin: -21px 0 46px; padding-bottom: 6px; border-bottom: 1px solid rgba(242,181,68,.7); color: var(--gold-light); font-size: 12px; font-weight: 700; }
.intro-rule { display: flex; justify-content: space-between; gap: 20px; padding-top: 16px; border-top: 1px solid rgba(242,181,68,.55); color: #83a4a6; font-size: 10px; font-weight: 700; letter-spacing: .16em; }
.article-listing { padding: 69px 0 120px; }
.section-title-row { display: flex; align-items: end; justify-content: space-between; gap: 28px; margin-bottom: 30px; }
.section-title-row h2 { margin: 0; font-size: clamp(34px, 3.8vw, 54px); letter-spacing: -.05em; line-height: 1.1; }
.section-title-row > p { max-width: 270px; margin: 0 0 3px; color: #9db9b9; font-size: 12px; }
.section-title-row > a { display: inline-flex; gap: 13px; align-items: center; border-bottom: 1px solid rgba(242,181,68,.7); padding-bottom: 6px; color: var(--gold-light); font-size: 12px; font-weight: 700; white-space: nowrap; }
.article-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.article-card { display: grid; grid-template-columns: 44% 56%; min-height: 295px; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: #0d2937; transition: border-color .2s, transform .2s; }
.article-card:first-child { grid-column: 1 / -1; grid-template-columns: 52% 48%; min-height: 365px; }
.article-card:hover { border-color: rgba(242,181,68,.58); transform: translateY(-3px); }
.article-card-copy { display: flex; flex-direction: column; align-items: start; padding: clamp(24px, 2.8vw, 38px); }
.article-meta { color: #8db1b0; font-size: 9px; font-weight: 700; letter-spacing: .14em; }
.article-meta i { display: inline-block; width: 4px; height: 4px; margin: 0 8px 2px; border-radius: 50%; background: var(--gold); }
.article-card h3 { max-width: 500px; margin: 20px 0 14px; font-size: clamp(20px, 2vw, 30px); line-height: 1.18; letter-spacing: -.04em; }
.article-card:first-child h3 { font-size: clamp(28px, 3vw, 42px); }
.article-card p { max-width: 500px; margin: 0 0 20px; color: #b1c8c6; font-size: 12px; line-height: 1.75; }
.read-link { display: inline-flex; gap: 22px; align-items: center; margin-top: auto; padding-bottom: 3px; border-bottom: 1px solid rgba(242,181,68,.6); color: var(--gold-light); font-size: 11px; font-weight: 700; }
.read-link b { font-size: 17px; font-weight: 400; }
.article-art { position: relative; min-height: 100%; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; padding: clamp(24px, 2.5vw, 35px); background: #153b48; isolation: isolate; }
.article-art::before { content: ""; position: absolute; inset: 0; z-index: -2; opacity: .35; background-image: linear-gradient(rgba(188,220,214,.14) 1px,transparent 1px), linear-gradient(90deg,rgba(188,220,214,.14) 1px,transparent 1px); background-size: 39px 39px; }
.article-art::after { content: ""; position: absolute; inset: 15% -30% -30% 23%; z-index: -1; border: 1px solid rgba(255,211,131,.17); border-radius: 50%; box-shadow: 0 0 0 50px rgba(255,211,131,.025), 0 0 0 105px rgba(255,211,131,.014); }
.art-top { color: #a4c5c1; font-size: 9px; font-weight: 700; letter-spacing: .17em; }
.art-top b { color: var(--gold); font-weight: 500; }
.art-main { position: relative; display: flex; align-items: end; gap: 9px; width: 100%; padding: 27px 0 26px; border-bottom: 1px solid rgba(255,255,255,.33); }
.art-main span { position: relative; z-index: 2; color: #ffe0a1; font-size: clamp(44px, 5vw, 79px); font-weight: 700; line-height: 1; letter-spacing: -.075em; white-space: nowrap; }
.art-main i { display: block; width: 10px; height: 30px; margin-left: auto; background: rgba(242,181,68,.65); }
.art-main i + i { margin-left: 0; height: 50px; }
.art-main i + i + i { height: 74px; }
.art-main i + i + i + i { height: 100px; background: var(--gold); }
.art-bottom { color: #c1d3ce; font-family: Georgia,"Times New Roman",serif; font-size: 15px; font-style: italic; }
.article-art-yield { background: linear-gradient(148deg,#204451,#102c39 68%,#0e2631); }
.article-art-yield .art-main i:nth-of-type(2) { height: 93px; background: #bb7f69; }.article-art-yield .art-main i:nth-of-type(3) { height: 52px; }.article-art-yield .art-main i:nth-of-type(4) { height: 33px; }
.article-art-growth { background: linear-gradient(150deg,#263e50,#172c43 63%,#112736); }.article-art-growth .art-main span { font-size: clamp(36px,3.5vw,54px); }.article-art-growth .art-main i:nth-of-type(1) { height: 82px; }.article-art-growth .art-main i:nth-of-type(2) { height: 60px; }.article-art-growth .art-main i:nth-of-type(3) { height: 43px; }.article-art-growth .art-main i:nth-of-type(4) { height: 25px; }
.article-art-calendar { background: linear-gradient(150deg,#16413f,#0d323a 64%,#0c2837); }.article-art-calendar .art-main span { font-size: clamp(33px,4vw,61px); }.article-art-calendar .art-main i { width: 13px; height: 13px !important; margin-top: 34px; border: 3px solid var(--gold); border-radius: 50%; background: transparent !important; }.article-art-calendar .art-main i:first-of-type { margin-left: auto; }
.article-art-reit { background: linear-gradient(150deg,#3a3c41,#17313b 64%,#0d2735); }.article-art-reit .art-main span { font-size: clamp(33px,4vw,60px); }.article-art-reit .art-main i { width: 26px; background: rgba(242,181,68,.22); border: 1px solid rgba(242,181,68,.7); }.article-art-reit .art-main i:nth-of-type(2) { height: 95px; }.article-art-reit .art-main i:nth-of-type(3) { height: 60px; }
.article-art-watchlist { background: linear-gradient(150deg,#184a49,#0d343b 66%,#0c2937); }.article-art-watchlist .art-main i { height: 16px !important; width: 16px; border: 2px solid var(--gold); border-radius: 3px; background: none !important; }.article-art-watchlist .art-main i:nth-of-type(2),.article-art-watchlist .art-main i:nth-of-type(4) { background: var(--gold) !important; }
.article-breadcrumb { display: flex; align-items: center; gap: 16px; padding-top: 31px; color: #8babaa; font-size: 11px; }.article-breadcrumb a { color: var(--gold-light); }
.article-hero { display: grid; grid-template-columns: minmax(0,1fr) minmax(300px,.58fr); align-items: center; gap: clamp(36px,5vw,75px); padding-top: clamp(60px,7vw,90px); padding-bottom: clamp(70px,7vw,100px); }
.article-hero h1 { max-width: 800px; margin: 0 0 22px; font-size: clamp(43px,5.4vw,76px); letter-spacing: -.068em; line-height: 1.06; }
.article-hero-copy > p:not(.eyebrow) { max-width: 650px; margin: 0; color: #b6cdca; font-size: clamp(15px,1.3vw,18px); line-height: 1.7; }
.article-byline { display: flex; flex-wrap: wrap; gap: 17px; margin-top: 37px; padding-top: 15px; border-top: 1px solid var(--line); color: #8bacac; font-size: 10px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }.article-byline span + span::before { content:"·"; margin-right: 17px; color: var(--gold); }
.article-hero-art { min-height: 330px; border: 1px solid rgba(242,181,68,.18); border-radius: 8px; }
.article-layout { display: grid; grid-template-columns: minmax(0,730px) minmax(180px,1fr); gap: clamp(60px,7vw,115px); padding-bottom: 112px; }
.article-body { min-width: 0; color: #d1deda; font-family: Georgia,"Times New Roman",serif; font-size: 18px; line-height: 1.82; }
.article-body > p:first-child { color: #f4f0e6; font-size: 21px; line-height: 1.7; }
.article-body h2,.article-body h3 { color: var(--ivory); font-family: Montserrat,"Avenir Next","Segoe UI",Arial,sans-serif; letter-spacing: -.04em; line-height: 1.2; scroll-margin-top: 32px; }
.article-body h2 { margin: 54px 0 19px; font-size: clamp(27px,2.5vw,36px); }.article-body h3 { margin: 50px 0 16px; font-size: 22px; }
.article-body p { margin: 0 0 22px; }.article-body a { color: var(--gold-light); text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.article-body ul,.article-body ol { margin: 0 0 27px; padding-left: 25px; }.article-body li { padding-left: 7px; margin: 0 0 11px; }.article-body li::marker { color: var(--gold); }
.article-body blockquote { margin: 31px 0; padding: 22px 26px; border-left: 3px solid var(--gold); background: #123341; color: #ffe0a1; font-family: Montserrat,"Avenir Next","Segoe UI",Arial,sans-serif; font-size: 17px; font-weight: 500; line-height: 1.55; }
.article-figure { margin: 38px 0 43px; overflow: hidden; border: 1px solid rgba(242,181,68,.28); border-radius: 8px; background: #102f3b; }
.article-figure img { display: block; width: 100%; height: auto; }
.article-figure figcaption { padding: 13px 20px 15px; border-top: 1px solid rgba(242,181,68,.15); color: #a8c3bf; font-family: Montserrat,"Avenir Next","Segoe UI",Arial,sans-serif; font-size: 11px; line-height: 1.55; }
.article-body h3 + ul { font-size: 14px; line-height: 1.6; }
.article-inline-cta { margin: 41px 0 48px; padding: 25px 29px; border-left: 3px solid var(--gold); background: #123341; font-family: Montserrat,"Avenir Next","Segoe UI",Arial,sans-serif; }
.article-inline-cta > span { color: var(--gold); font-size: 10px; font-weight: 700; letter-spacing: .14em; }
.article-inline-cta p { margin: 10px 0 13px; color: #e3ece5; font-size: 15px; line-height: 1.55; }
.article-inline-cta a { display: inline-flex; gap: 13px; align-items: center; color: var(--gold-light); font-size: 12px; font-weight: 700; }
.article-inline-cta b { font-size: 18px; font-weight: 400; }
.article-table-wrap { overflow-x: auto; margin: 26px 0; border: 1px solid var(--line); border-radius: 6px; }
.article-body table { width: 100%; min-width: 560px; border-collapse: collapse; font-family: Montserrat,"Avenir Next","Segoe UI",Arial,sans-serif; font-size: 12px; line-height: 1.5; }.article-body th,.article-body td { padding: 12px 16px; border-bottom: 1px solid var(--line); text-align: left; }.article-body th { color: var(--gold-light); background: #143442; }.article-body tr:nth-child(even) td { background: #0d2835; }
.article-aside-inner { position: sticky; top: 26px; padding: 22px; border-top: 1px solid rgba(242,181,68,.6); background: #0e2a37; }.article-aside p { margin-bottom: 19px; color: var(--gold); font-size: 10px; font-weight: 700; letter-spacing: .14em; }.article-aside a { display: block; padding: 10px 0; border-top: 1px solid var(--line); color: #bbceca; font-size: 12px; line-height: 1.4; }.article-aside a:hover { color: var(--gold-light); }.aside-callout { margin-top: 22px; padding: 18px 0 0; border-top: 1px solid rgba(242,181,68,.4); color: #789ea0; font-family: Georgia,"Times New Roman",serif; font-size: 18px; font-style: italic; }
.article-related { padding-bottom: 95px; }.article-related .article-card:first-child { grid-column: auto; grid-template-columns: 44% 56%; min-height: 295px; }.article-related .article-card:first-child h3 { font-size: clamp(20px,2vw,30px); }
.newsletter { display: grid; grid-template-columns: 1fr minmax(300px,.75fr); gap: clamp(30px,5vw,85px); align-items: center; margin-bottom: 110px; padding: clamp(32px,5vw,67px); border: 1px solid rgba(242,181,68,.24); border-radius: 9px; background: linear-gradient(115deg,#143b45,#0c2635 70%); box-shadow: inset 0 1px rgba(255,255,255,.06); }
.newsletter h2 { max-width: 560px; margin: 0 0 13px; font-size: clamp(32px,3.4vw,48px); letter-spacing: -.055em; line-height: 1.14; }.newsletter-copy > p:not(.eyebrow) { max-width: 530px; margin: 0; color: #bad0cb; font-size: 13px; line-height: 1.75; }
.newsletter-form > label:first-child { display: block; margin-bottom: 10px; color: #e5eee7; font-size: 11px; font-weight: 700; }.newsletter-row { display: flex; gap: 7px; }.newsletter-row input { min-width: 0; flex: 1; height: 52px; padding: 0 15px; border: 1px solid rgba(186,215,211,.4); border-radius: 4px; background: #071f2b; color: white; font-size: 13px; }.newsletter-row input::placeholder { color: #72969a; }.newsletter-row button { display: inline-flex; align-items: center; justify-content: space-between; gap: 18px; min-width: 143px; padding: 0 16px; border: none; border-radius: 4px; background: var(--gold); color: var(--navy); cursor: pointer; font-size: 11px; font-weight: 700; }.newsletter-row button:hover { background: var(--gold-light); }.newsletter-row button:disabled { opacity: .65; cursor: wait; }.newsletter-row button span { font-size: 18px; font-weight: 400; }
.signup-consent { display: flex; align-items: start; gap: 10px; margin-top: 15px; color: #bbceca; font-size: 11px; line-height: 1.5; cursor: pointer; }.signup-consent input { margin: 2px 0 0; accent-color: var(--gold); }.signup-note { margin: 9px 0 0; color: #88a9a8; font-size: 10px; line-height: 1.5; }.signup-note a { color: var(--gold-light); text-decoration: underline; }.signup-status { margin: 12px 0 0; font-size: 11px; line-height: 1.5; }.signup-status.is-error { color: #ffb4a8; }.signup-status.is-success { color: #b2dbb4; }
@media(max-width:1050px) { .article-card,.article-card:first-child,.article-related .article-card:first-child { grid-template-columns: 1fr; }.article-art { min-height: 215px; }.article-card:first-child .article-art { min-height: 295px; }.article-card-copy { min-height: 250px; }.article-hero { grid-template-columns: 1fr minmax(250px,.5fr); gap: 30px; } }
@media(max-width:760px) { .article-grid { grid-template-columns: 1fr; }.article-card:first-child { grid-column: auto; }.article-card,.article-card:first-child,.article-related .article-card:first-child { grid-template-columns: 42% 58%; min-height: 275px; }.article-card .article-art,.article-card:first-child .article-art { min-height: 275px; }.article-card-copy { min-height: 0; }.article-hero { grid-template-columns: 1fr; }.article-hero-art { min-height: 240px; }.article-layout { grid-template-columns: 1fr; padding-bottom: 75px; }.article-aside { display:none; }.newsletter { grid-template-columns: 1fr; }.article-related { padding-bottom: 65px; } }
@media(max-width:560px) { .articles-intro { padding-top: 70px; }.articles-intro h1 { font-size: 51px; }.article-listing { padding-top: 34px; padding-bottom: 75px; }.section-title-row { display:block; }.section-title-row > p,.section-title-row > a { margin-top: 16px; }.article-card,.article-card:first-child,.article-related .article-card:first-child { grid-template-columns: 1fr; }.article-card .article-art,.article-card:first-child .article-art { min-height: 230px; }.article-card-copy { min-height: 238px; }.article-card:first-child h3 { font-size: 30px; }.article-hero { padding-top: 52px; }.article-hero h1 { font-size: 44px; }.article-body { font-size: 17px; }.newsletter { margin-bottom: 70px; padding: 28px 22px; }.newsletter-row { flex-direction: column; }.newsletter-row button { min-height: 50px; } }
@media(max-width:560px) { .home-articles { padding-bottom: 66px; }.home-article-list a { grid-template-columns: 1fr 22px; gap: 8px; padding-block: 19px; }.home-article-list span { grid-column: 1 / -1; }.home-article-list strong { font-size: 21px; } }
@media(max-width:760px) { .coming-features { grid-template-columns: repeat(2,1fr); margin-top: 65px; } }
@media(max-width:560px) { .coming-hero { padding-top: 70px; padding-bottom: 85px; }.coming-hero h1 { font-size: 50px; }.coming-actions .button { width: 100%; }.coming-features { gap: 17px 8px; font-size: 9px; } }
