:root{
  --rapb-navy:#0A1A2F;
  --rapb-midnight:#12233F;
  --rapb-gold:#CF9F55;
  --rapb-warm:#C8A55A;
  --rapb-champagne:#E6DCC1;
  --rapb-stone:#F5F2EC;
  --rapb-white:#FFFFFF;
  --rapb-ink:#1a1a1a;
  --rapb-serif:'Cormorant Garamond',Georgia,serif;
  --rapb-sans:'Barlow',system-ui,sans-serif;
}

/*
 * DSB Architects & Partners source-fidelity stylesheet.
 * Desktop geometry follows the supplied original source:
 * 120px section rhythm; 1240px wrap with 40px gutters; 80px split gap;
 * 540px intro image; 3-column advantage grid at 30px; 3-column partner
 * grid at 44px; 3-stage grid at 30px; 64px proof strip.
 */
.rapb-hero,.rapb-section,.rapb-cta,.rapb-proof{position:relative!important;box-sizing:border-box!important;overflow:hidden!important}
.rapb-section{padding:120px 0!important}
.rapb-wrap{box-sizing:border-box!important;width:100%!important;max-width:1240px!important;margin-left:auto!important;margin-right:auto!important;padding-left:40px!important;padding-right:40px!important}
.rapb-section h1,.rapb-section h2,.rapb-section h3,.rapb-hero h1,.rapb-cta h2{font-family:var(--rapb-serif)!important;font-weight:600!important;letter-spacing:.3px!important;line-height:1.15!important}
.rapb-section p,.rapb-hero p,.rapb-cta p,.rapb-proof p{font-family:var(--rapb-sans)!important;font-weight:300!important;line-height:1.7!important}

/* Source eyebrow rule + tracked Barlow. */
.rapb-eyebrow{margin-bottom:22px!important}
.rapb-eyebrow .et_pb_text_inner,.rapb-eyebrow p{margin:0!important}
.rapb-eyebrow p{display:flex!important;align-items:center!important;gap:16px!important;font-family:var(--rapb-sans)!important;font-size:12px!important;line-height:1.4!important;letter-spacing:3.5px!important;text-transform:uppercase!important;color:var(--rapb-warm)!important;font-weight:500!important}
.rapb-eyebrow p::before{content:"";display:block;flex:0 0 38px;width:38px;height:1px;background:currentColor;opacity:.78}

/* 01 HERO — source .page-hero: same image as Homeowners, lighter top overlay. */
.rapb-hero{min-height:66vh!important;display:flex!important;align-items:flex-end!important;padding:0 0 78px!important;background:var(--rapb-navy)!important;color:#fff!important}
.rapb-bg-row{position:absolute!important;inset:0!important;width:100%!important;max-width:none!important;height:100%!important;min-height:100%!important;margin:0!important;padding:0!important;z-index:0!important}
.rapb-bg-row,.rapb-bg-row>div,.rapb-bg-image,.rapb-bg-image .et_pb_image_wrap{height:100%!important;min-height:100%!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.rapb-bg-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
.rapb-hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(rgba(10,26,47,.45),rgba(10,26,47,.80))}
.rapb-hero-content{position:relative!important;z-index:2!important;margin-top:auto!important}
.rapb-hero-content>.et_pb_column{max-width:820px!important}
.rapb-hero-heading h1{font-size:clamp(38px,5.6vw,66px)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;max-width:820px!important;margin:0!important;padding:0!important}
.rapb-hero-copy p{color:var(--rapb-champagne)!important;font-size:18px!important;max-width:620px!important;margin:20px 0 0!important;padding:0!important}

/* 02 WHY PARTNER WITH US — original .split. */
.rapb-split-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:80px!important;align-items:center!important}
.rapb-split-row>.et_pb_column{width:auto!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0!important}
.rapb-big-heading h2{font-size:clamp(30px,4vw,46px)!important;color:var(--rapb-ink)!important;margin:0 0 24px!important;padding:0!important}
.rapb-lead p{color:#555!important;font-size:17px!important;margin:0 0 18px!important;padding:0!important}
.rapb-lead p:last-child{margin-bottom:0!important}
.rapb-intro-image,.rapb-intro-image .et_pb_image_wrap{display:block!important;width:100%!important;margin:0!important}
.rapb-intro-image img{display:block!important;height:540px!important;width:100%!important;object-fit:cover!important;margin:0!important}

/* Shared source .sec-head. */
.rapb-sec-head{max-width:680px!important;margin-bottom:60px!important;padding-left:0!important;padding-right:0!important}
.rapb-sec-head-center{margin-left:auto!important;margin-right:auto!important;text-align:center!important}
.rapb-sec-head-center .rapb-eyebrow .et_pb_text_inner{display:flex!important;justify-content:center!important}
.rapb-sec-head-center .rapb-eyebrow p{justify-content:center!important}
.rapb-section-heading h2{font-size:clamp(30px,4vw,44px)!important;color:var(--rapb-ink)!important;margin:0!important;padding:0!important}
.rapb-sec-intro p{color:#555!important;font-size:17px!important;margin:14px 0 0!important;padding:0!important}
.rapb-cards-row{position:relative!important;z-index:1!important}

/* Exact source bg-grid pattern from the original DSB shape system. */
.rapb-bg-grid{isolation:isolate!important}
.rapb-bg-grid::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(to right,currentColor 1px,transparent 1px),linear-gradient(to bottom,currentColor 1px,transparent 1px);background-size:88px 88px;color:var(--rapb-navy);opacity:.045;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 40%,#000 30%,transparent 78%);mask-image:radial-gradient(ellipse 80% 60% at 50% 40%,#000 30%,transparent 78%)}
.rapb-bg-grid.rapb-on-dark::before{color:var(--rapb-champagne);opacity:.07}
.rapb-bg-grid>.et_pb_row{position:relative!important;z-index:1!important}

/* 03 DSB ADVANTAGE */
.rapb-why{background:var(--rapb-navy)!important;color:#fff!important}
.rapb-why .rapb-section-heading h2{color:#fff!important;-webkit-text-fill-color:#fff!important}
.rapb-why .rapb-sec-intro p{color:var(--rapb-champagne)!important}
.rapb-why-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:30px!important;align-items:stretch!important}
.rapb-why-grid>*{min-width:0!important;margin:0!important;align-self:stretch!important}
.rapb-why-card{box-sizing:border-box!important;border:1px solid rgba(207,159,85,.22)!important;padding:42px 34px!important;background:var(--rapb-midnight)!important;transition:border-color .4s ease,transform .4s ease!important;height:100%!important}
.rapb-why-card:hover{border-color:var(--rapb-gold)!important;transform:translateY(-6px)!important}
.rapb-card-number p{font-family:var(--rapb-serif)!important;color:var(--rapb-gold)!important;font-size:15px!important;line-height:1.2!important;letter-spacing:2px!important;margin:0 0 20px!important;padding:0!important}
.rapb-card-heading h3{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:22px!important;line-height:1.25!important;margin:0 0 14px!important;padding:0!important}
.rapb-card-copy p{color:var(--rapb-champagne)!important;font-size:15px!important;opacity:.88!important;margin:0!important;padding:0!important}

/* 04 PARTNERS */
.rapb-partners{background:var(--rapb-stone)!important}
.rapb-p-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:44px!important;align-items:start!important}
.rapb-p-grid>*{min-width:0!important;margin:0!important}
.rapb-p-item{box-sizing:border-box!important;border-top:2px solid var(--rapb-warm)!important;padding-top:22px!important}
.rapb-p-heading h3{font-size:21px!important;line-height:1.25!important;color:var(--rapb-ink)!important;margin:0 0 10px!important;padding:0!important}
.rapb-p-copy p{color:#555!important;font-size:15px!important;margin:0!important;padding:0!important}

/* 05 PARTNERSHIP STAGES */
.rapb-stages{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:30px!important;align-items:stretch!important}
.rapb-stages>*{min-width:0!important;margin:0!important;align-self:stretch!important}
.rapb-stage{box-sizing:border-box!important;padding:38px 32px!important;background:#fff!important;border:1px solid #eee!important;height:100%!important}
.rapb-stage-number p{font-family:var(--rapb-serif)!important;font-size:34px!important;line-height:1!important;color:var(--rapb-gold)!important;margin:0 0 14px!important;padding:0!important}
.rapb-stage-heading h3{font-size:20px!important;line-height:1.3!important;color:var(--rapb-ink)!important;margin:0 0 10px!important;padding:0!important}
.rapb-stage-copy p{color:#555!important;font-size:14px!important;margin:0!important;padding:0!important}

/* 06 CTA — original is Midnight + diagonal line shape, not a photo. */
.rapb-cta{padding:120px 0!important;background:var(--rapb-midnight)!important;color:#fff!important;text-align:center!important;isolation:isolate!important}
.rapb-bg-diag::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:repeating-linear-gradient(24deg,currentColor 0 1px,transparent 1px 26px,currentColor 26px 27px,transparent 27px 96px);color:var(--rapb-champagne);opacity:.08;-webkit-mask-image:linear-gradient(105deg,#000 0 34%,transparent 74%);mask-image:linear-gradient(105deg,#000 0 34%,transparent 74%)}
.rapb-cta-content{position:relative!important;z-index:1!important;text-align:center!important}
.rapb-cta-heading h2{font-size:clamp(32px,4.5vw,50px)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;max-width:760px!important;margin:0 auto 26px!important;padding:0!important;text-align:center!important}
.rapb-cta-copy p{color:var(--rapb-champagne)!important;font-size:18px!important;margin:0 0 40px!important;padding:0!important;text-align:center!important}
.rapb-solid-btn{text-align:center!important}
.rapb-solid-btn .et_pb_button,.et_pb_button.rapb-solid-btn{box-sizing:border-box!important;display:inline-block!important;position:relative!important;font-family:var(--rapb-sans)!important;font-size:13px!important;line-height:1.7!important;font-weight:500!important;letter-spacing:2px!important;text-transform:uppercase!important;white-space:nowrap!important;padding:17px 38px!important;border:1px solid var(--rapb-gold)!important;border-radius:0!important;background:var(--rapb-gold)!important;color:var(--rapb-navy)!important;transition:background .35s ease,transform .45s cubic-bezier(.22,.61,.36,1)!important}
.rapb-solid-btn .et_pb_button::after,.et_pb_button.rapb-solid-btn::after{display:none!important;content:none!important}
.rapb-solid-btn .et_pb_button:hover,.et_pb_button.rapb-solid-btn:hover{padding:17px 38px!important;background:var(--rapb-warm)!important;color:var(--rapb-navy)!important;transform:translateY(-2px)!important}

/* 07 PROOF / ACCREDITATIONS — identical global DSB proof treatment. */
.rapb-proof{padding:64px 0!important;text-align:center!important;background:var(--rapb-stone)!important;isolation:isolate!important}
.rapb-bg-hex::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='97' viewBox='0 0 56 97'%3E%3Cpath d='M28 0 56 16v32L28 64 0 48V16z' fill='none' stroke='%230A1A2F' stroke-width='1'/%3E%3Cpath d='M28 64 56 80v32M28 64 0 80v32' fill='none' stroke='%230A1A2F' stroke-width='1'/%3E%3C/svg%3E");background-size:56px 97px;opacity:.05;-webkit-mask-image:radial-gradient(ellipse 60% 70% at 84% 50%,#000 6%,transparent 72%);mask-image:radial-gradient(ellipse 60% 70% at 84% 50%,#000 6%,transparent 72%)}
.rapb-proof-row{position:relative!important;z-index:1!important}
.rapb-proof-stars p{color:var(--rapb-gold)!important;font-size:22px!important;line-height:1.4!important;letter-spacing:4px!important;margin:0 0 14px!important;padding:0!important}
.rapb-proof-copy p{color:#555!important;font-size:15px!important;line-height:1.6!important;margin:0 0 28px!important;padding:0!important}
.rapb-proof-copy a{color:var(--rapb-navy)!important;text-decoration:none!important;border-bottom:1px solid var(--rapb-gold)!important;padding-bottom:1px!important}
.rapb-proof-badges{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:14px!important}
.rapb-proof-badges>*{width:auto!important;min-width:0!important;margin:0!important}
.rapb-proof-badge{display:inline-flex!important;width:auto!important;margin:0!important}
.rapb-proof-badge .et_pb_image_wrap{display:inline-flex!important;width:auto!important}
.rapb-proof-badge img{display:block!important;height:58px!important;width:auto!important;max-width:140px!important;object-fit:contain!important;background:#fff!important;padding:8px 14px!important;border-radius:8px!important;box-shadow:0 4px 18px rgba(10,26,47,.08)!important;transition:transform .3s ease!important}
.rapb-proof-badge img:hover{transform:translateY(-3px)!important}

/* The supplied source collapses the split/stages at <=900 and turns .rail-sm grids into swipe rails. */
@media(max-width:900px){
  .rapb-section{padding:80px 0!important}
  .rapb-wrap{padding-left:24px!important;padding-right:24px!important}
  .rapb-split-row{grid-template-columns:1fr!important;gap:36px!important}
  .rapb-intro-image img{height:340px!important}
  .rapb-stages{grid-template-columns:1fr!important;gap:36px!important}
  .rapb-sec-head{margin-bottom:46px!important}

  .rapb-rail-sm{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:visible!important;scroll-snap-type:x mandatory!important;-webkit-overflow-scrolling:touch!important;gap:14px!important;scrollbar-width:none!important;margin-left:-24px!important;margin-right:-24px!important;padding:4px 24px 8px!important}
  .rapb-rail-sm::-webkit-scrollbar{display:none!important}
  .rapb-rail-sm>*{flex:0 0 84%!important;width:84%!important;min-width:84%!important;max-width:84%!important;scroll-snap-align:center!important;margin:0!important}
  .rapb-why-card{height:auto!important}
}

@media(max-width:600px){
  .rapb-section{padding:64px 0!important}
  .rapb-wrap{padding-left:24px!important;padding-right:24px!important}
  .rapb-sec-head,.rapb-sec-head-center{margin-bottom:34px!important}
  .rapb-sec-intro p,.rapb-lead p{font-size:15.5px!important}

  .rapb-hero{min-height:auto!important;padding:132px 0 52px!important;align-items:flex-start!important}
  .rapb-hero-content{padding-top:0!important}
  .rapb-hero-content>.et_pb_column{max-width:none!important}
  .rapb-hero-heading h1{font-size:40px!important;line-height:1.08!important}
  .rapb-hero-copy p{font-size:16px!important;margin-top:16px!important}

  .rapb-split-row{gap:34px!important}
  .rapb-intro-image img{height:260px!important}
  .rapb-big-heading h2,.rapb-section-heading h2{margin-bottom:16px!important}

  .rapb-cta{padding:70px 0!important}
  .rapb-cta-copy p{margin-bottom:30px!important}
  .rapb-solid-btn,.rapb-solid-btn .et_pb_button,.et_pb_button.rapb-solid-btn{width:100%!important;text-align:center!important}

  .rapb-proof{padding:44px 0!important}
  .rapb-proof-badges{gap:10px!important}
  .rapb-proof-badge img{height:42px!important;padding:6px 10px!important}
}
