
.rh-portfolio,.rh-project-single{font-family:var(--rh-font-body);color:#17283a}.rh-portfolio h1,.rh-portfolio h2,.rh-portfolio h3,.rh-project-single h1,.rh-project-single h2{font-family:var(--rh-font-heading)}
.rh-portfolio-hero{position:relative;overflow:hidden;min-height:720px;background:#091b31;color:#fff;display:flex;align-items:center}.rh-portfolio-hero:before{content:"";position:absolute;inset:0;background:url("/assets/img/raehaus-portfolio-hero.webp") center/cover no-repeat;opacity:.49}.rh-portfolio-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,27,49,.94),rgba(9,27,49,.82) 48%,rgba(9,27,49,.43))}.rh-portfolio-hero>.raehaus-container{position:relative;z-index:2}.rh-portfolio-hero-copy{max-width:990px;padding:70px 0 82px}.rh-portfolio-hero h1{margin:0;font-size:clamp(55px,6.2vw,91px);font-weight:800;line-height:.98;letter-spacing:-.052em}.rh-portfolio-hero strong{display:block;margin-top:28px;font-family:var(--rh-font-heading);font-size:23px;color:var(--rh-brand-orange)}.rh-portfolio-hero p{max-width:780px;margin:18px 0 0;font-size:17px;line-height:1.72;color:rgba(255,255,255,.76)}
.rh-case-study{padding:120px 0 135px;background:#f3f7fa}.rh-case-study-alt{background:#fff}.rh-case-head{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;max-width:1160px;margin:0 auto 55px}.rh-case-head>div>p,.rh-case-story section>p,.rh-provided>p,.rh-brand-board>p{margin:0 0 12px;font-family:var(--rh-font-heading);font-size:9px;font-weight:700;letter-spacing:.16em;color:#E86F51}.rh-case-head h2{margin:0;font-size:clamp(47px,5vw,72px);font-weight:800;line-height:1;letter-spacing:-.05em;color:#102d52}.rh-case-head span{display:block;margin-top:12px;font-size:12px;color:#78858f}.rh-case-head>p{margin:0;font-size:16px;line-height:1.72;color:#62717c}
.rh-case-visuals{position:relative;display:grid;grid-template-columns:1.38fr .62fr;gap:22px;max-width:1160px;margin:auto}.rh-website-shot{margin:0;background:#0a1521;padding:12px;border-radius:7px;box-shadow:0 24px 55px rgba(16,45,82,.13)}.rh-website-shot img{display:block;width:100%;height:auto;border-radius:3px}.rh-brand-board{background:#102d52;border-radius:7px;padding:28px;display:flex;flex-direction:column;gap:20px}.rh-brand-board>p{color:var(--rh-brand-orange)}.rh-brand-logo,.rh-brand-card{background:#08131e;border:1px solid rgba(255,255,255,.10);padding:15px;border-radius:5px;display:grid;place-items:center}.rh-brand-board img{display:block;max-width:100%;height:auto}
.rh-case-body{display:grid;grid-template-columns:.64fr 1.36fr;gap:95px;max-width:1080px;margin:95px auto 0}.rh-provided{position:sticky;top:145px;align-self:start;border-top:3px solid var(--rh-brand-orange);padding-top:23px}.rh-provided h3{margin:25px 0 9px;font-size:17px;color:#102d52}.rh-provided span{display:block;padding:5px 0;font-size:12px;line-height:1.45;color:#63717b}.rh-case-story section{margin-bottom:55px}.rh-case-story h3{margin:0 0 20px;font-size:clamp(34px,3.6vw,51px);font-weight:750;line-height:1.08;letter-spacing:-.04em;color:#102d52}.rh-case-story section>p:last-child{margin:0;font-size:16px;line-height:1.82;color:#5b6b76}.rh-case-story blockquote{position:relative;margin:65px 0;padding:43px 0 43px 46px;border-left:5px solid var(--rh-brand-orange);font-family:var(--rh-font-heading);font-size:clamp(27px,3vw,40px);font-weight:700;line-height:1.3;letter-spacing:-.025em;color:#102d52}.rh-result{padding-top:40px;border-top:1px solid #d6e0e6}.rh-client-site{display:inline-flex;gap:10px;color:#102d52;text-decoration:none;border-bottom:1px solid var(--rh-brand-orange);padding-bottom:7px;font-family:var(--rh-font-heading);font-size:13px;font-weight:650}.rh-client-site i{font-style:normal;color:var(--rh-brand-orange)}
.rh-portfolio-cta{padding:115px 0;background:#1A416C;color:#fff;text-align:center}.rh-portfolio-cta>div>p{margin:0 0 17px;font-family:var(--rh-font-heading);font-size:9px;font-weight:700;letter-spacing:.16em;color:var(--rh-brand-orange)}.rh-portfolio-cta h2{max-width:850px;margin:auto;font-size:clamp(48px,5vw,70px);font-weight:800;line-height:1.02;letter-spacing:-.045em}.rh-portfolio-cta button{margin-top:32px;border:0;border-bottom:1px solid var(--rh-brand-orange);background:none;color:#fff;padding:0 0 8px;font-family:var(--rh-font-heading);font-size:14px;font-weight:650;cursor:pointer}.rh-portfolio-cta button i{font-style:normal;color:var(--rh-brand-orange);margin-left:8px}
.rh-project-single{background:#f3f7fa;padding-bottom:110px}.rh-project-single>.raehaus-container{max-width:960px}.rh-project-back{margin:0 0 35px}.rh-project-back a{color:#102d52;text-decoration:none}.rh-project-single h1{font-size:clamp(52px,6vw,82px);line-height:1;letter-spacing:-.05em;color:#102d52}.rh-project-summary{font-size:18px;line-height:1.7;color:#61717c}.rh-project-main-image{display:block;width:100%;margin:45px 0;border-radius:7px}.rh-project-single h2{margin-top:55px;font-size:36px;color:#102d52}.rh-project-single>div>p{line-height:1.8;color:#5c6b75}.rh-project-single blockquote{margin:50px 0;border-left:4px solid var(--rh-brand-orange);padding:25px 0 25px 35px;font-family:var(--rh-font-heading);font-size:27px;font-weight:700;color:#102d52}
@media(max-width:850px){.rh-case-head,.rh-case-body{grid-template-columns:1fr;gap:45px}.rh-case-visuals{grid-template-columns:1fr}.rh-provided{position:relative;top:auto}.rh-brand-board{display:grid;grid-template-columns:1fr 1fr}.rh-brand-board>p{grid-column:1/-1}}
@media(max-width:600px){.rh-portfolio-hero{min-height:650px}.rh-portfolio-hero:before{background-position:60% center;opacity:.38}.rh-portfolio-hero:after{background:rgba(9,27,49,.78)}.rh-portfolio-hero-copy{padding:45px 0 60px}.rh-portfolio-hero h1{font-size:48px}.rh-portfolio-hero strong{font-size:20px}.rh-case-study{padding:85px 0}.rh-case-head{margin-bottom:40px}.rh-case-head h2{font-size:48px}.rh-case-visuals{gap:15px}.rh-brand-board{display:block}.rh-brand-board>div+div{margin-top:15px}.rh-case-body{margin-top:65px}.rh-provided{text-align:left}.rh-case-story blockquote{margin:50px 0;padding:30px 0 30px 24px;font-size:28px}.rh-portfolio-cta{padding:85px 0}.rh-portfolio-cta h2{font-size:47px}}

/* v1.0.1 editorial showcase hierarchy */
.rh-showcase-label{display:flex;align-items:center;gap:16px;margin:0 0 18px}.rh-showcase-label span{font-family:var(--rh-font-heading);font-size:13px;font-weight:750;letter-spacing:.13em;color:#a96c08}.rh-showcase-label i{display:block;width:78px;height:2px;background:var(--rh-brand-orange)}
.rh-project-meta{font-size:13px!important;font-weight:550;color:#697985!important}.rh-project-disciplines{margin-top:8px;font-family:var(--rh-font-heading);font-size:10px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:#9a6a18}
.rh-browser-bar{height:35px;margin:-2px -2px 10px;display:grid;grid-template-columns:70px 1fr 70px;align-items:center;border-bottom:1px solid rgba(255,255,255,.10);color:rgba(255,255,255,.54)}.rh-browser-dots{display:flex;gap:5px;padding-left:7px}.rh-browser-dots i{display:block;width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.27)}.rh-browser-bar strong{grid-column:2;text-align:center;font-family:var(--rh-font-heading);font-size:9px;font-weight:500;letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rh-brand-board{padding-top:0}.rh-brand-board-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 0 17px;border-bottom:1px solid rgba(255,255,255,.15);margin-bottom:3px}.rh-brand-board-head strong{font-family:var(--rh-font-heading);font-size:13px;font-weight:750;letter-spacing:.13em;color:var(--rh-brand-orange)}.rh-brand-board-head span{font-family:var(--rh-font-heading);font-size:8px;font-weight:650;letter-spacing:.12em;color:rgba(255,255,255,.48)}
.rh-provided>p,.rh-case-story section>p{font-size:12px!important;font-weight:750!important;letter-spacing:.13em!important;margin-bottom:15px!important}.rh-provided h3{font-size:19px;margin:28px 0 11px}.rh-provided span{font-size:14px;line-height:1.58;padding:5px 0;color:#596a76}
.rh-case-story blockquote{overflow:hidden}.rh-case-story blockquote:before{content:"“";position:absolute;left:24px;top:-38px;font-family:Georgia,serif;font-size:170px;line-height:1;color:rgba(245,166,35,.075);pointer-events:none}.rh-case-story blockquote{isolation:isolate}.rh-case-story blockquote::first-line{position:relative;z-index:1}
.rh-result{margin-top:65px;padding:42px 42px 38px!important;border-top:4px solid var(--rh-brand-orange)!important;background:#eaf1f6}.rh-result h3{margin-bottom:17px}.rh-result>p:last-child{color:#4e6271!important}
@media(max-width:850px){.rh-showcase-label i{width:55px}.rh-brand-board-head{grid-column:1/-1}.rh-brand-board{padding-top:0}}
@media(max-width:600px){.rh-showcase-label{justify-content:center;margin-bottom:16px}.rh-showcase-label span{font-size:12px}.rh-case-head>div{text-align:center}.rh-project-meta{font-size:12px!important}.rh-project-disciplines{font-size:9px;line-height:1.6}.rh-browser-bar{grid-template-columns:55px 1fr 55px}.rh-brand-board-head{display:block;text-align:center;padding:18px 0}.rh-brand-board-head span{display:block;margin-top:6px}.rh-provided>p,.rh-case-story section>p{font-size:12px!important}.rh-provided span{font-size:14px}.rh-result{margin-left:-8px;margin-right:-8px;padding:32px 24px 29px!important}.rh-case-story blockquote:before{left:10px;top:-28px;font-size:130px}}


/* v1.0.3 Portfolio editorial-copy system.
   All client/case-study narrative is explicitly Montserrat and regular weight,
   independent of theme/global paragraph styles. Future Portfolio Projects inherit this automatically. */
.rh-case-head>p,
.rh-case-story section>p:last-child,
.rh-result>p:last-child,
.rh-project-summary,
.rh-project-single>div>p{
 font-family:"Montserrat",ui-sans-serif,system-ui,sans-serif;
 font-weight:400!important;
 font-style:normal;
 letter-spacing:0;
 text-transform:none
}

/* Landing-page case-study narrative */
.rh-case-head>p{
 font-size:16px;
 line-height:1.78;
 color:#5d6d78
}
.rh-case-story section>p:last-child,
.rh-result>p:last-child{
 font-size:16px!important;
 line-height:1.86!important;
 color:#536571!important
}

/* Individual /portfolio/{project}/ case-study pages */
.rh-project-summary{
 font-size:18px;
 line-height:1.76;
 color:#5c6d79
}
.rh-project-single>div>p{
 font-size:16px;
 line-height:1.86;
 color:#536571
}

/* Slightly improve reading measure without changing the existing showcase architecture. */
.rh-case-story section>p:last-child{max-width:720px}
.rh-project-single>div>p{max-width:820px}

@media(max-width:600px){
 .rh-case-head>p,
 .rh-case-story section>p:last-child,
 .rh-result>p:last-child,
 .rh-project-single>div>p{font-size:15px!important;line-height:1.82!important}
 .rh-project-summary{font-size:17px;line-height:1.72}
}

/* v1.0.4 premium Client Portfolio masthead */
.rh-portfolio-masthead{margin:0 0 30px}
.rh-portfolio-masthead-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.rh-portfolio-masthead-row>span{font-family:var(--rh-font-heading);font-size:23px;font-weight:750;line-height:1;letter-spacing:.045em;color:#102d52}
.rh-portfolio-masthead-row>small{font-family:var(--rh-font-heading);font-size:9px;font-weight:650;letter-spacing:.15em;color:#85929c}
.rh-portfolio-rule{display:flex;align-items:center;width:100%;height:3px;margin-top:15px}
.rh-portfolio-rule i{display:block;width:76px;height:3px;background:var(--rh-brand-orange)}
.rh-portfolio-rule b{display:block;flex:1;height:1px;background:#ccd8e0}
.rh-case-head h2{margin-top:0}
.rh-project-disciplines{display:none!important}

@media(max-width:600px){
 .rh-portfolio-masthead{margin-bottom:27px;text-align:center}
 .rh-portfolio-masthead-row{display:block}
 .rh-portfolio-masthead-row>span{display:block;font-size:19px;letter-spacing:.055em}
 .rh-portfolio-masthead-row>small{display:none}
 .rh-portfolio-rule{justify-content:center;width:min(280px,82%);margin:14px auto 0}
 .rh-portfolio-rule i{width:64px}
 .rh-case-head>div{text-align:center}
 .rh-project-meta{display:block;text-align:center}
}

/* v1.0.6 Final CTA action is owned by Core .rh-global-cta. */
.rh-portfolio-cta .rh-global-cta{margin-top:34px;padding:0 0 10px;border:0;border-bottom:1px solid #f5a623;background:transparent;font-size:15px}.rh-portfolio-cta .rh-global-cta>i{margin-left:0;color:#102d52}

/* v1.0.7 — final Portfolio CTA hierarchy.
   Core continues to own .rh-global-cta interaction; Portfolio owns section scale only. */
.rh-portfolio-cta{
 padding:118px 0 124px!important
}
.rh-portfolio-cta>div>p{
 margin:0 0 22px!important;
 font-family:var(--rh-font-heading)!important;
 font-size:14px!important;
 font-weight:700!important;
 line-height:1.2!important;
 letter-spacing:.13em!important;
 color:#E86F51!important
}
.rh-portfolio-cta h2{
 max-width:980px!important;
 margin:0 auto!important;
 font-family:var(--rh-font-heading)!important;
 font-size:clamp(54px,6vw,82px)!important;
 font-weight:800!important;
 line-height:.98!important;
 letter-spacing:-.05em!important
}
.rh-portfolio-cta .rh-global-cta{margin-top:42px!important}
@media(max-width:760px){
 .rh-portfolio-cta{padding:90px 0 96px!important}
 .rh-portfolio-cta>div>p{font-size:12px!important;margin-bottom:18px!important}
 .rh-portfolio-cta h2{font-size:clamp(42px,11vw,58px)!important;line-height:1.01!important}
 .rh-portfolio-cta .rh-global-cta{margin-top:34px!important}
}

/* v1.0.8 — Portfolio CTA kicker scale refinement. */
.rh-portfolio-cta>div>p{
 font-size:18px!important;
 line-height:1.15!important;
 letter-spacing:.12em!important;
 margin-bottom:24px!important;
 color:#E86F51!important
}
@media(max-width:760px){
 .rh-portfolio-cta>div>p{
  font-size:15px!important;
  line-height:1.2!important;
  letter-spacing:.10em!important;
  margin-bottom:20px!important
 }
}
