/*
Theme Name: River North Real Estate
Theme URI: https://rivernorthrealestate.com/
Author: River North Real Estate
Description: Editorial one-page WordPress theme adapted directly from the supplied River North HTML mockup.
Version: 2.1.1
Text Domain: river-north-real-estate
*/
:root{--rn-green:#3e4f4f;--rn-green-2:#2c3637;--rn-cream:#f5f0e6;--rn-paper:#fbf8f2;--rn-ink:#1b211f;--rn-muted:#6d716d;--rn-copper:#a27b5a;--rn-line:rgba(41,65,63,.18);--rn-shadow:0 22px 60px rgba(26,39,36,.10);--rn-serif:'Cormorant Garamond',Georgia,serif;--rn-sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--rn-cream);color:var(--rn-ink);font-family:var(--rn-sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3{font-family:var(--rn-serif);font-weight:500;line-height:.98;letter-spacing:-.025em}p{margin-top:0}.rn-shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}.rn-kicker{margin:0 0 14px;text-transform:uppercase;letter-spacing:.19em;font:600 11px/1.2 var(--rn-sans);color:var(--rn-copper)}.rn-kicker--light{color:#e3b792}.rn-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 24px;border:1px solid transparent;text-decoration:none;font:600 13px/1 var(--rn-sans);letter-spacing:.02em;transition:.25s ease;cursor:pointer}.rn-btn--cream{background:var(--rn-cream);color:var(--rn-ink)}.rn-btn--cream:hover{background:#fff;transform:translateY(-2px)}.rn-btn--outline-light{border-color:rgba(255,255,255,.65);color:#fff;background:rgba(255,255,255,.04);backdrop-filter:blur(6px)}.rn-btn--outline-light:hover{background:#fff;color:var(--rn-green)}.rn-btn--dark{background:var(--rn-green);color:#fff;border:0}.rn-btn--dark:hover{background:var(--rn-green-2);transform:translateY(-1px)}.rn-text-link{display:inline-flex;gap:9px;align-items:center;color:var(--rn-green);text-decoration:none;font-weight:600;font-size:13px}.rn-text-link span{transition:transform .2s}.rn-text-link:hover span{transform:translateX(4px)}.rn-text-link--light{color:#fff}.rn-site-header{height:82px;background:var(--rn-green-2);display:flex;align-items:center;padding:0 4vw;gap:34px;position:sticky;top:0;z-index:1000;border-bottom:1px solid rgba(255,255,255,.09)}.rn-logo{margin-right:auto;display:flex;align-items:center;flex:0 0 auto}.rn-logo .rn-header-logo{display:block;width:auto;height:52px;max-width:min(40vw,360px);object-fit:contain;filter:none}.rn-nav{display:flex;align-items:center;gap:26px}.rn-nav a{color:#fff;text-decoration:none;font:500 13px/1 var(--rn-sans)}.rn-nav a:hover{opacity:.72}.rn-nav .rn-nav__cta,.rn-nav .menu-item:last-child a{border:1px solid rgba(227,183,146,.8);padding:12px 17px}.rn-menu-toggle{display:none;width:38px;height:34px;border:0;background:none;padding:4px;cursor:pointer}.rn-menu-toggle span{display:block;width:26px;height:1px;background:#e3b792;margin:6px auto}.rn-hero{min-height:660px;background:linear-gradient(90deg,rgba(17,25,23,.66) 0%,rgba(17,25,23,.32) 45%,rgba(17,25,23,.02) 78%),var(--rn-hero) 52% center/cover no-repeat;color:#fff;display:flex;align-items:center}.rn-hero__inner{width:min(1180px,calc(100% - 48px));margin:auto;padding:60px 0}.rn-hero h1{font-size:clamp(56px,7.2vw,94px);max-width:760px;margin:0 0 24px}.rn-hero h1 em{font-weight:500}.rn-hero__lede{font-family:var(--rn-serif);font-size:23px;line-height:1.35;margin-bottom:28px}.rn-hero__actions{display:flex;align-items:center;gap:28px}.rn-about{display:grid;grid-template-columns:.92fr 1.08fr;gap:76px;align-items:center;padding-block:100px}.rn-image-frame{position:relative}.rn-image-frame:before{content:"";position:absolute;inset:16px -16px -16px 16px;border:1px solid rgba(180,123,85,.45);z-index:0}.rn-image-frame img{position:relative;z-index:1;width:100%;height:560px;object-fit:cover}.rn-image-frame__tag{position:absolute;z-index:2;left:18px;bottom:18px;background:rgba(245,240,230,.93);padding:8px 11px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.rn-about__copy h2{font-size:clamp(44px,5vw,67px);margin:0 0 30px;max-width:650px}.rn-about__copy p:not(.rn-kicker){max-width:630px;color:#3f4642}.rn-services{background:var(--rn-paper);padding:96px 0 110px;border-block:1px solid var(--rn-line)}.rn-section-heading--center{text-align:center;max-width:720px;margin:0 auto 48px}.rn-section-heading h2{font-size:clamp(44px,5vw,66px);margin:0 0 18px}.rn-section-heading>p:last-child{color:var(--rn-muted)}.rn-service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.rn-service-card{background:var(--rn-cream);border:1px solid var(--rn-line);box-shadow:0 1px 0 rgba(255,255,255,.9);transition:transform .3s,box-shadow .3s}.rn-service-card:hover{transform:translateY(-6px);box-shadow:var(--rn-shadow)}.rn-service-card__media{height:310px;overflow:hidden}.rn-service-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.rn-service-card:hover .rn-service-card__media img{transform:scale(1.035)}.rn-service-card__body{position:relative;padding:34px 36px 38px}.rn-service-card h3{font-size:37px;margin:0 0 12px}.rn-service-card p{color:#525955;max-width:450px}.rn-card-number{position:absolute;right:30px;top:30px;color:var(--rn-copper);font:600 11px/1 var(--rn-sans);letter-spacing:.1em}.rn-areas{position:relative;min-height:560px;background:var(--rn-living) center/cover no-repeat;color:#fff;display:flex;align-items:center}.rn-areas__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,37,34,.80),rgba(24,37,34,.40))}.rn-areas__inner{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:70px;padding-block:80px}.rn-areas__intro h2{font-size:clamp(48px,6vw,76px);margin:0 0 22px}.rn-areas__intro p:not(.rn-kicker){max-width:560px;font-family:var(--rn-serif);font-size:20px;line-height:1.45;margin-bottom:28px}.rn-area-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.38);border-left:1px solid rgba(255,255,255,.24)}.rn-area-list span{padding:16px 18px;border-right:1px solid rgba(255,255,255,.24);border-bottom:1px solid rgba(255,255,255,.24);font-family:var(--rn-serif);font-size:21px;background:rgba(255,255,255,.035);backdrop-filter:blur(3px)}.rn-area-list__wide{grid-column:1/-1;text-align:center;font-size:23px!important;font-style:italic;letter-spacing:.01em;background:rgba(255,255,255,.08)!important;padding:18px!important}.rn-founders{display:grid;grid-template-columns:1fr 1.02fr;gap:76px;align-items:center;padding-block:110px}.rn-founders__photo{position:relative}.rn-founders__photo .rn-image-frame__tag{bottom:28px;min-width:180px;padding:11px 16px;font-size:11px;letter-spacing:.14em;text-align:center;box-shadow:0 8px 24px rgba(23,32,29,.12)}.rn-founders__photo .rn-image-frame__tag--kassandra{left:28px}.rn-founders__photo .rn-image-frame__tag--natalie{left:auto;right:28px}.rn-founders__photo .rn-image-frame__tag--kassandra,.rn-founders__photo .rn-image-frame__tag--natalie{transform:translateY(0)}.rn-founders__photo img{height:650px}.rn-founders__content h2{font-size:clamp(50px,5.5vw,72px);margin:0 0 17px}.rn-founders__intro{font-family:var(--rn-serif);font-size:21px;line-height:1.45;color:#454c48;margin-bottom:30px}.rn-founder-list{border-top:1px solid var(--rn-line)}.rn-founder-list article{padding:24px 0 22px;border-bottom:1px solid var(--rn-line)}.rn-founder-list h3{font-size:31px;margin:2px 0 12px}.rn-founder-role{margin:0;color:var(--rn-copper);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em}.rn-founder-list ul{margin:0;padding-left:18px;color:#525955;font-size:14px;line-height:1.55;columns:2;column-gap:28px}.rn-awards-inline{margin-top:21px;color:var(--rn-muted);font-size:12px}.rn-reviews{background:#eee4d6;padding:96px 0}.rn-section-heading--split{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.rn-section-heading--split h2{max-width:720px;margin-bottom:0}.rn-review-controls{display:flex;gap:10px}.rn-review-controls button{width:46px;height:46px;border:1px solid #80786d;border-radius:50%;background:transparent;color:var(--rn-ink);font-size:20px;cursor:pointer;transition:.2s}.rn-review-controls button:hover{background:var(--rn-green);color:#fff;border-color:var(--rn-green)}.rn-review-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:2px 2px 16px}.rn-review-track::-webkit-scrollbar{display:none}.rn-review-card{flex:0 0 calc(50% - 12px);scroll-snap-align:start;background:var(--rn-paper);border:1px solid rgba(41,65,63,.12);padding:34px 34px 30px;min-height:320px;display:flex;flex-direction:column}.rn-stars{color:var(--rn-copper);letter-spacing:.2em;font-size:13px}.rn-review-card blockquote{font:500 italic 25px/1.42 var(--rn-serif);margin:24px 0 28px;flex:1}.rn-review-card>p{margin:0;text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:600;color:var(--rn-muted)}.rn-contact{background:var(--rn-green);color:#fff;padding:100px 0}.rn-contact__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}.rn-contact__copy h2{font-size:clamp(52px,6vw,78px);margin:0 0 24px}.rn-contact__copy>p:not(.rn-kicker){font-family:var(--rn-serif);font-size:21px;line-height:1.45;color:rgba(255,255,255,.82)}.rn-contact__details{margin-top:35px;display:flex;flex-direction:column;gap:8px;font-size:14px}.rn-contact__details a{text-decoration:none}.rn-form-card{background:var(--rn-paper);color:var(--rn-ink);padding:38px;box-shadow:var(--rn-shadow)}.rn-contact-form{display:grid;gap:20px}.rn-field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rn-contact-form label{display:grid;gap:7px;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:600;color:#59605c}.rn-contact-form input,.rn-contact-form select,.rn-contact-form textarea{width:100%;border:0;border-bottom:1px solid #bcb9b0;background:transparent;border-radius:0;padding:10px 0 11px;color:var(--rn-ink);font:400 15px/1.3 var(--rn-sans);outline:none}.rn-contact-form textarea{resize:vertical;min-height:115px}.rn-contact-form input:focus,.rn-contact-form select:focus,.rn-contact-form textarea:focus{border-bottom-color:var(--rn-copper)}.rn-contact-form .rn-btn{justify-self:start;padding-inline:28px}.rn-form-small{font-size:11px;color:#7b7d79;margin:0}.rn-hp{position:absolute!important;left:-9999px!important}.rn-form-notice{padding:12px 14px;margin-bottom:18px;background:#f4ded8;border-left:3px solid #a34d38;font-size:13px}.rn-form-notice--success{background:#e1ebe3;border-color:#416c50}.rn-footer{background:var(--rn-green-2);color:#fff;padding:54px 0 24px}.rn-footer__grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:34px;align-items:start}.rn-footer__brand img{width:190px;filter:brightness(0) invert(1);margin-bottom:11px}.rn-footer__brand p{font-family:var(--rn-serif);font-style:italic;color:rgba(255,255,255,.72)}.rn-footer__label{display:block;color:#d2a17d;text-transform:uppercase;letter-spacing:.14em;font-size:9px;font-weight:600;margin-bottom:8px}.rn-footer__grid a,.rn-footer__grid p{font-size:12px;line-height:1.55;margin:0;text-decoration:none;color:rgba(255,255,255,.84)}.rn-footer__bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:38px;padding-top:20px;display:flex;justify-content:space-between;gap:24px;color:rgba(255,255,255,.52);font-size:10px}.rn-footer__bottom p{margin:0}.rn-footer__bottom div{display:flex;gap:18px}.rn-footer__bottom a{text-decoration:none}
@media(max-width:900px){.rn-founders__photo .rn-image-frame__tag{bottom:22px;min-width:160px}.rn-founders__photo .rn-image-frame__tag--kassandra{left:22px}.rn-founders__photo .rn-image-frame__tag--natalie{right:22px}.rn-site-header{height:70px}.rn-logo .rn-header-logo{height:38px;max-width:min(58vw,240px)}.rn-menu-toggle{display:block}.rn-nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--rn-green);padding:24px;flex-direction:column;align-items:flex-start;border-top:1px solid rgba(255,255,255,.1);box-shadow:0 18px 30px rgba(0,0,0,.15)}.rn-nav.is-open{display:flex}.rn-hero{min-height:610px}.rn-about,.rn-founders,.rn-contact__grid{grid-template-columns:1fr;gap:48px}.rn-about{padding-block:75px}.rn-about__image{max-width:650px}.rn-image-frame img,.rn-founders__photo img{height:500px}.rn-founders__photo{max-width:650px}.rn-founders{padding-block:80px}.rn-areas__inner{grid-template-columns:1fr;gap:45px}.rn-area-list{max-width:650px}.rn-footer__grid{grid-template-columns:1.4fr 1fr 1fr}.rn-footer__grid>div:nth-child(4),.rn-footer__grid>div:nth-child(5){margin-top:10px}}
@media(max-width:680px){.rn-founders__photo .rn-image-frame__tag{bottom:14px;min-width:auto;padding:9px 11px;font-size:9px;letter-spacing:.11em}.rn-founders__photo .rn-image-frame__tag--kassandra{left:14px}.rn-founders__photo .rn-image-frame__tag--natalie{right:14px}.rn-shell,.rn-hero__inner{width:min(100% - 34px,1180px)}.rn-hero{min-height:560px;background-position:58% center}.rn-hero h1{font-size:52px}.rn-hero__lede{font-size:19px}.rn-hero__actions{align-items:flex-start;flex-direction:column;gap:17px}.rn-about{gap:40px}.rn-image-frame:before{inset:10px -8px -10px 8px}.rn-image-frame img,.rn-founders__photo img{height:420px}.rn-about__copy h2,.rn-section-heading h2{font-size:45px}.rn-service-grid{grid-template-columns:1fr}.rn-service-card__media{height:270px}.rn-service-card__body{padding:28px}.rn-areas{min-height:auto}.rn-areas__inner{padding-block:68px}.rn-areas__intro h2{font-size:49px}.rn-area-list span{font-size:18px;padding:13px}.rn-founder-list ul{columns:1}.rn-section-heading--split{align-items:flex-start}.rn-section-heading--split h2{font-size:44px}.rn-review-card{flex-basis:88%;padding:28px;min-height:340px}.rn-review-card blockquote{font-size:23px}.rn-contact{padding:75px 0}.rn-contact__grid{gap:40px}.rn-contact__copy h2{font-size:52px}.rn-form-card{padding:26px}.rn-field-row{grid-template-columns:1fr}.rn-footer__grid{grid-template-columns:1fr 1fr}.rn-footer__brand{grid-column:1/-1}.rn-footer__bottom{flex-direction:column}.rn-footer__bottom div{order:-1}}

/* Contact pathway cards */
.rn-btn--outline-dark{background:transparent;color:var(--rn-ink);border:1px solid #6d726e}
.rn-btn--outline-dark:hover{background:var(--rn-green);border-color:var(--rn-green);color:#fff}
