/* Revolution Dojo Houston — editorial blog extension */
.skip-link{position:fixed;left:16px;top:12px;z-index:200;transform:translateY(-160%);background:var(--gold);color:var(--obsidian);padding:10px 16px;border-radius:4px;font-weight:800}
.skip-link:focus{transform:translateY(0)}
.meta-pixel-noscript{display:none}
.blog-shell .mp-logo-image{height:38px}
.blog-shell .footer-visit-phone{margin-top:12px}
.blog-shell .footer-visit-cta{margin-top:16px}
.blog-shell .blog-form-message{margin-top:12px;color:var(--judo-blue)}
.blog-shell .required-marker{color:var(--red)}
.blog-shell a:focus-visible,.blog-shell button:focus-visible,.blog-pagination a:focus-visible,.blog-adjacent a:focus-visible{outline:3px solid var(--gold-deep);outline-offset:4px}

.blog-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--obsidian);color:var(--white);padding:clamp(84px,10vw,142px) 0 72px}
.blog-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(100deg,rgba(11,13,16,.98) 12%,rgba(11,13,16,.78) 62%,rgba(11,13,16,.9)),url('/assets/img/spring-floor.webp') center 58%/cover}
.blog-hero::after{content:"";position:absolute;inset:auto -8% -180px 34%;height:330px;z-index:-1;background:var(--gold);opacity:.92;transform:skewY(-7deg)}
.blog-hero .container{position:relative}
.blog-kicker{display:flex;align-items:center;gap:14px;margin-bottom:20px;font-family:'Oswald',var(--font-head),sans-serif;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.blog-kicker::before{content:"";width:38px;height:3px;background:currentColor}
.blog-hero h1{max-width:850px;font-size:clamp(52px,8vw,96px);line-height:.92;text-transform:uppercase}
.blog-hero .lead{max-width:690px;margin-top:24px;color:rgba(255,255,255,.82)}

.blog-index{padding:76px 0 104px;background:var(--canvas)}
.blog-index-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:34px;padding-bottom:22px;border-bottom:2px solid var(--obsidian)}
.blog-index-head h2{margin:0;text-transform:uppercase;font-size:clamp(28px,4vw,44px)}
.blog-count{font-family:'Oswald',var(--font-head),sans-serif;text-transform:uppercase;letter-spacing:.12em;font-size:13px;color:var(--steel)}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.blog-card{display:flex;min-width:0;flex-direction:column;background:var(--white);border:1px solid rgba(11,13,16,.12);box-shadow:0 18px 42px rgba(11,13,16,.08);transition:transform .22s var(--ease),box-shadow .22s var(--ease)}
.blog-card:hover{transform:translateY(-5px);box-shadow:0 24px 52px rgba(11,13,16,.14)}
.blog-card-media{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--graphite)}
.blog-card-media::after{content:"READ";position:absolute;right:0;bottom:0;padding:8px 13px;background:var(--gold);color:var(--obsidian);font:700 12px/1 'Oswald',sans-serif;letter-spacing:.16em}
.blog-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.blog-card:hover .blog-card-media img{transform:scale(1.035)}
.blog-card-body{display:flex;flex:1;flex-direction:column;padding:24px}
.blog-card-meta,.article-byline{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;color:var(--steel);font-size:13px;font-weight:600}
.blog-card-meta span+span::before,.article-byline span+span::before{content:"/";margin-right:14px;color:var(--gold-deep);font-weight:900}
.blog-card h2,.blog-card h3{margin:15px 0 12px;font-size:clamp(24px,2.4vw,31px);line-height:1.02}
.blog-card h2 a,.blog-card h3 a{background-image:linear-gradient(var(--gold),var(--gold));background-position:0 100%;background-repeat:no-repeat;background-size:0 5px;transition:background-size .2s ease}
.blog-card h2 a:hover,.blog-card h3 a:hover{background-size:100% 5px}
.blog-card p{color:var(--steel);font-size:15.5px;line-height:1.65}
.blog-categories{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:18px}
.blog-category{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border:1px solid rgba(11,13,16,.22);font:700 11px/1.2 'Oswald',sans-serif;letter-spacing:.08em;text-transform:uppercase}
.blog-empty{padding:64px 32px;text-align:center;border:2px dashed rgba(11,13,16,.25);background:rgba(255,255,255,.55)}
.blog-empty h2{margin-bottom:12px}.blog-empty p{max-width:570px;margin:0 auto;color:var(--steel)}

.blog-pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:48px}
.blog-pagination a,.blog-pagination span{display:grid;min-width:44px;height:44px;place-items:center;border:1px solid rgba(11,13,16,.25);font-family:'Oswald',sans-serif;font-weight:700}
.blog-pagination [aria-current="page"]{background:var(--obsidian);color:var(--white);border-color:var(--obsidian)}

.article-hero{padding:68px 0 52px;background:var(--obsidian);color:var(--white);border-bottom:8px solid var(--gold)}
.article-hero .container{max-width:1040px}
.article-hero h1{max-width:920px;margin:18px 0 24px;font-size:clamp(44px,7vw,80px);line-height:.98}
.article-hero .article-byline{color:rgba(255,255,255,.68)}
.article-categories{display:flex;flex-wrap:wrap;gap:8px}
.article-categories .blog-category{border-color:rgba(255,255,255,.35);color:var(--white)}
.article-feature{background:linear-gradient(var(--obsidian) 0 42%,var(--canvas) 42%)}
.article-feature .container{max-width:1100px}
.article-feature figure{margin:0;position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--graphite);box-shadow:0 26px 70px rgba(11,13,16,.22)}
.article-feature img{width:100%;height:100%;object-fit:cover}
.article-layout{display:grid;grid-template-columns:minmax(0,720px) 250px;justify-content:center;gap:64px;padding:64px 48px 90px}
.article-content{min-width:0;font-size:18px;line-height:1.82}
.article-content>p:first-child{font-size:21px;line-height:1.65;color:var(--graphite)}
.article-content h2{margin:54px 0 18px;padding-top:20px;border-top:1px solid var(--ring);font-size:clamp(30px,4vw,42px)}
.article-content h3{margin:38px 0 14px;font-size:clamp(23px,3vw,30px)}
.article-content h4{margin:30px 0 12px}
.article-content p,.article-content ul,.article-content ol,.article-content blockquote,.article-content pre{margin:0 0 24px}
.article-content ul,.article-content ol{padding-left:26px}.article-content ul{list-style:disc}.article-content ol{list-style:decimal}
.article-content li{margin-bottom:8px}
.article-content a{font-weight:700;text-decoration:underline;text-decoration-color:var(--gold-deep);text-decoration-thickness:3px;text-underline-offset:3px}
.article-content blockquote{padding:22px 26px;border-left:6px solid var(--gold);background:var(--white);font:600 21px/1.55 'Sora',sans-serif}
.article-content img{width:100%;height:auto;margin:34px 0}
.article-content code{padding:.12em .32em;background:rgba(11,13,16,.08);border-radius:3px;font-size:.9em}
.article-content pre{overflow:auto;padding:20px;background:var(--obsidian);color:var(--white)}
.article-content pre code{padding:0;background:transparent}
.article-aside{align-self:start;position:sticky;top:122px}
.share-panel{padding:22px;border-top:5px solid var(--gold);background:var(--white);box-shadow:0 14px 34px rgba(11,13,16,.09)}
.share-panel h2{margin:0 0 14px;font-size:21px;text-transform:uppercase}
.share-actions{display:grid;gap:8px}
.share-actions a,.share-actions button{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:9px 12px;border:1px solid var(--ring);background:transparent;color:var(--ink);font:700 12px/1 'Oswald',sans-serif;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.share-actions a:hover,.share-actions button:hover{border-color:var(--obsidian);background:var(--canvas)}
.share-status{min-height:20px;margin:10px 0 0;color:var(--steel);font-size:12px}

.article-cta{padding:56px 0;background:var(--gold);color:var(--obsidian)}
.article-cta .eyebrow{color:var(--obsidian)}
.article-cta .container{display:flex;align-items:center;justify-content:space-between;gap:30px}
.article-cta h2{max-width:650px;margin:0;text-transform:uppercase}
.article-cta .btn-dark{flex:none}
.article-more{padding:78px 0 96px;background:var(--white)}
.article-more-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px;padding-bottom:18px;border-bottom:2px solid var(--obsidian)}
.article-more-head h2{margin:0;text-transform:uppercase}
.article-more .blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.blog-adjacent{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ring);border-bottom:1px solid var(--ring);background:var(--canvas)}
.blog-adjacent a{display:block;padding:34px clamp(24px,5vw,70px)}
.blog-adjacent a+a{border-left:1px solid var(--ring);text-align:right}
.blog-adjacent small{display:block;margin-bottom:7px;color:var(--steel);font:700 11px/1 'Oswald',sans-serif;letter-spacing:.15em;text-transform:uppercase}
.blog-adjacent strong{font:700 clamp(20px,2.5vw,28px)/1.08 'Oswald',sans-serif}

@media (max-width:980px){.blog-grid,.article-more .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{grid-template-columns:minmax(0,720px);gap:38px}.article-aside{position:static}.share-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.blog-hero{padding-top:68px}.blog-hero::after{left:46%;bottom:-230px}.blog-index{padding:54px 0 74px}.blog-index-head,.article-more-head{display:block}.blog-count{margin-top:10px}.blog-grid,.article-more .blog-grid{grid-template-columns:1fr}.blog-card-body{padding:21px}.article-hero{padding:48px 0 38px}.article-feature .container{padding:0}.article-feature figure{box-shadow:none}.article-layout{padding:46px 24px 68px}.article-content{font-size:17px}.article-content>p:first-child{font-size:19px}.article-cta .container{display:block}.article-cta .btn{margin-top:24px}.share-actions{grid-template-columns:1fr 1fr}.blog-adjacent{grid-template-columns:1fr}.blog-adjacent a+a{border-top:1px solid var(--ring);border-left:0;text-align:left}.blog-article .sticky-cta{display:none}.blog-article{padding-bottom:0}}
@media (prefers-reduced-motion:reduce){.blog-card,.blog-card-media img,.blog-card h2 a,.blog-card h3 a{transition:none}}
