:root{
  --rbtd-navy:#0A1A2F;
  --rbtd-midnight:#12233F;
  --rbtd-gold:#CF9F55;
  --rbtd-warm:#C8A55A;
  --rbtd-champ:#E6DCC1;
  --rbtd-stone:#F5F2EC;
  --rbtd-white:#FFFFFF;
  --rbtd-ink:#171717;
  --rbtd-grey:#666a70;
  --rbtd-serif:'Cormorant Garamond',Georgia,serif;
  --rbtd-sans:'Barlow',system-ui,sans-serif;
}

/* DSB Technical Department v0.2.0 — visual lock */
body.rbtd-technical-page{overflow-x:hidden;background:#fff;color:var(--rbtd-ink)}
body.rbtd-technical-page #main-content{overflow:hidden}
body.rbtd-technical-page .et_pb_section,
body.rbtd-technical-page .et_pb_row{padding:0;margin:0}
body.rbtd-technical-page .et_pb_module{margin-bottom:0}

.rbtd-wrap{width:min(1420px,calc(100% - 80px))!important;max-width:1420px!important;margin-left:auto!important;margin-right:auto!important}
.rbtd-section{position:relative;padding:112px 0!important}

.rbtd-eyebrow{margin:0!important}
.rbtd-eyebrow .et_pb_text_inner{display:flex!important;align-items:center!important;gap:16px!important}
.rbtd-eyebrow .et_pb_text_inner:before{content:'';display:block;width:44px;height:1px;background:var(--rbtd-gold);flex:none}
.rbtd-eyebrow p{font-family:var(--rbtd-sans)!important;font-size:12px!important;line-height:1.25!important;letter-spacing:4px!important;text-transform:uppercase!important;color:var(--rbtd-gold)!important;font-weight:500!important;margin:0!important}

.rbtd-big-heading h2,.rbtd-section-heading h2{font-family:var(--rbtd-serif)!important;color:var(--rbtd-ink)!important;font-weight:600!important;letter-spacing:.1px!important;margin:0!important}
.rbtd-big-heading h2{font-size:clamp(44px,3.8vw,60px)!important;line-height:1.04!important}
.rbtd-section-heading h2{font-size:clamp(43px,3.55vw,56px)!important;line-height:1.08!important}
.rbtd-lead p,.rbtd-sec-intro p{font-family:var(--rbtd-sans)!important;color:#737373!important;font-weight:300!important;font-size:18px!important;line-height:1.78!important}
.rbtd-sec-head{max-width:900px!important;margin-bottom:72px!important}
.rbtd-sec-head-center{text-align:center;margin-left:auto!important;margin-right:auto!important}
.rbtd-sec-head-center .rbtd-eyebrow .et_pb_text_inner{justify-content:center!important}
.rbtd-sec-head .rbtd-eyebrow{margin-bottom:27px!important}
.rbtd-sec-head .rbtd-section-heading{margin-bottom:21px!important}
.rbtd-sec-intro{max-width:830px!important;margin-left:auto!important;margin-right:auto!important}

/* HERO */
.rbtd-hero{position:relative!important;min-height:560px!important;display:flex!important;align-items:center!important;overflow:hidden!important;background:var(--rbtd-navy)!important}
.rbtd-bg-row{position:absolute!important;inset:0!important;width:100%!important;max-width:none!important;height:100%!important;z-index:0!important}
.rbtd-bg-row>.et_pb_column{height:100%!important}
.rbtd-bg-image,.rbtd-bg-image .et_pb_image_wrap{width:100%!important;height:100%!important;display:block!important}
.rbtd-bg-image img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
.rbtd-hero:after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(rgba(10,26,47,.50),rgba(10,26,47,.84));pointer-events:none}
.rbtd-hero-content{position:relative!important;z-index:2!important;padding-top:70px!important}
.rbtd-hero-content>.et_pb_column{max-width:820px!important;margin-left:auto!important;margin-right:auto!important}
.rbtd-hero-eyebrow{margin-bottom:30px!important}
.rbtd-hero-heading h1{font-family:var(--rbtd-serif)!important;color:#fff!important;font-size:clamp(58px,5vw,82px)!important;line-height:.98!important;font-weight:600!important;letter-spacing:.2px!important;margin:0!important;white-space:nowrap}
.rbtd-hero-copy{margin-top:30px!important}
.rbtd-hero-copy p{font-family:var(--rbtd-sans)!important;color:#ded8ca!important;font-size:19px!important;line-height:1.7!important;font-weight:300!important;max-width:820px!important;margin:0!important}

/* subtle backgrounds */
.rbtd-bg-grid{background-color:#fff!important;background-image:linear-gradient(rgba(10,26,47,.038) 1px,transparent 1px),linear-gradient(90deg,rgba(10,26,47,.038) 1px,transparent 1px)!important;background-size:92px 92px!important;background-position:center top!important}
.rbtd-bg-hex{background-color:var(--rbtd-stone)!important;background-image:linear-gradient(30deg,rgba(207,159,85,.045) 12%,transparent 12.5%,transparent 87%,rgba(207,159,85,.045) 87.5%),linear-gradient(150deg,rgba(207,159,85,.045) 12%,transparent 12.5%,transparent 87%,rgba(207,159,85,.045) 87.5%)!important;background-size:82px 142px!important}

/* INTRO */
.rbtd-intro{padding:118px 0!important}
.rbtd-split{display:flex!important;gap:84px!important;align-items:center!important}
.rbtd-split>.et_pb_column{min-width:0!important}
.rbtd-copy-col{flex:0 1 50%!important}
.rbtd-image-col{flex:0 1 50%!important}
.rbtd-intro .rbtd-eyebrow{margin-bottom:31px!important}
.rbtd-intro .rbtd-big-heading{margin-bottom:34px!important}
.rbtd-intro .rbtd-big-heading h2{font-size:54px!important;line-height:1.08!important}
.rbtd-lead p{margin:0 0 22px!important;max-width:600px!important}
.rbtd-quote{margin-top:31px!important}
.rbtd-quote p{font-family:var(--rbtd-serif)!important;color:var(--rbtd-navy)!important;font-size:21px!important;line-height:1.4!important;font-style:italic!important;margin:0!important}
.rbtd-intro-image,.rbtd-intro-image .et_pb_image_wrap{height:100%!important;display:block!important}
.rbtd-intro-image img{width:100%!important;height:610px!important;object-fit:cover!important;display:block!important}

/* RESPONSIBILITIES */
.rbtd-responsibilities{background:#f7f4ee!important;padding:104px 0 92px!important}
.rbtd-responsibilities .rbtd-sec-head{margin-left:0!important;margin-bottom:68px!important;max-width:900px!important}
.rbtd-responsibilities .rbtd-section-heading h2{font-size:54px!important}
.rbtd-duty-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:42px 46px!important}
.rbtd-duty{border-top:1px solid rgba(10,26,47,.13)!important;padding-top:30px!important;min-height:176px!important}
.rbtd-icon-module{margin-bottom:24px!important}
.rbtd-icon svg{width:31px;height:31px;stroke:var(--rbtd-gold);stroke-width:1.35;fill:none;stroke-linecap:round;stroke-linejoin:round}
.rbtd-duty-title h3{font-family:var(--rbtd-serif)!important;font-size:22px!important;line-height:1.25!important;font-weight:600!important;color:#111!important;margin:0 0 11px!important}
.rbtd-duty-copy p{font-family:var(--rbtd-sans)!important;font-size:15px!important;line-height:1.7!important;color:#7b7b7b!important;font-weight:300!important;margin:0!important;max-width:390px!important}

/* ROLES INTRO + VACANCIES */
.rbtd-roles{padding:122px 0 112px!important;background:#fff!important}
.rbtd-roles .rbtd-sec-head{margin-bottom:65px!important}
.rbtd-vac-list{margin-bottom:95px!important}
.rbtd-vac{display:grid!important;grid-template-columns:minmax(0,1fr) 300px!important;gap:40px!important;align-items:center!important;border:1px solid #e6e1d8!important;border-left:3px solid var(--rbtd-gold)!important;padding:33px 30px 31px!important;margin-bottom:16px!important;background:#fff!important;min-height:174px!important}
.rbtd-hiring-tag p{display:inline-flex!important;align-items:center!important;gap:8px!important;border:1px solid rgba(207,159,85,.48)!important;border-radius:999px!important;padding:6px 13px!important;font-family:var(--rbtd-sans)!important;font-size:10px!important;line-height:1!important;letter-spacing:2.2px!important;text-transform:uppercase!important;color:#d0a25c!important;margin:0 0 15px!important}
.rbtd-hiring-tag p:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--rbtd-gold);display:inline-block}
.rbtd-vac-title h3{font-family:var(--rbtd-serif)!important;font-size:24px!important;color:var(--rbtd-navy)!important;line-height:1.15!important;font-weight:600!important;margin:0 0 8px!important}
.rbtd-vac-desc p{font-family:var(--rbtd-sans)!important;color:#73767b!important;font-size:15px!important;line-height:1.65!important;font-weight:300!important;margin:0!important;max-width:780px!important}
.rbtd-vac-meta p{font-family:var(--rbtd-sans)!important;color:#aaa29a!important;font-size:10px!important;line-height:1.4!important;letter-spacing:2.4px!important;text-transform:uppercase!important;margin:12px 0 0!important}
.rbtd-vac-actions{display:grid!important;grid-template-columns:120px 1fr!important;gap:12px!important;align-items:center!important}
.rbtd-btn .et_pb_button{border-radius:0!important;text-transform:uppercase!important;font-family:var(--rbtd-sans)!important;font-size:12px!important;letter-spacing:2.4px!important;line-height:1.2!important;padding:18px 20px!important;box-shadow:none!important}
.rbtd-btn-solid .et_pb_button{background:var(--rbtd-gold)!important;border:1px solid var(--rbtd-gold)!important;color:var(--rbtd-navy)!important}
.rbtd-btn-solid .et_pb_button:hover{background:#d8ae69!important;border-color:#d8ae69!important;color:var(--rbtd-navy)!important}
.rbtd-btn-link .et_pb_button{background:transparent!important;border:0!important;border-bottom:1px solid var(--rbtd-gold)!important;color:#526075!important;padding:14px 0 8px!important;font-size:11px!important;white-space:nowrap!important}

/* ROLE CARDS */
.rbtd-role-cards-row{margin-top:0!important}
.rbtd-role-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:58px 30px!important}
.rbtd-role-card{display:flex!important;flex-direction:column!important;min-width:0!important}
.rbtd-role-ph{position:relative!important;overflow:hidden!important;aspect-ratio:1.33/1!important;background:var(--rbtd-stone)!important}
.rbtd-role-image,.rbtd-role-image .et_pb_image_wrap{width:100%!important;height:100%!important;display:block!important}
.rbtd-role-image img{width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .65s ease!important}
.rbtd-role-card:hover .rbtd-role-image img{transform:scale(1.035)}
.rbtd-role-number{position:absolute!important;left:0!important;bottom:0!important;background:var(--rbtd-navy)!important;padding:13px 18px!important;z-index:3!important}
.rbtd-role-number p{font-family:var(--rbtd-sans)!important;color:var(--rbtd-gold)!important;font-size:11px!important;line-height:1!important;letter-spacing:2.8px!important;margin:0!important}
.rbtd-role-live{position:absolute!important;right:0!important;top:0!important;background:var(--rbtd-gold)!important;padding:13px 18px!important;z-index:3!important}
.rbtd-role-live p{font-family:var(--rbtd-sans)!important;color:var(--rbtd-navy)!important;font-size:10px!important;line-height:1!important;letter-spacing:2.1px!important;margin:0!important;text-transform:uppercase!important}
.rbtd-role-card-title{margin-top:27px!important}
.rbtd-role-card-title h3{font-family:var(--rbtd-serif)!important;color:var(--rbtd-navy)!important;font-size:25px!important;line-height:1.14!important;font-weight:600!important;margin:0 0 15px!important}
.rbtd-role-card-copy{flex:1!important}
.rbtd-role-card-copy p{font-family:var(--rbtd-sans)!important;color:#73777f!important;font-size:15px!important;line-height:1.65!important;font-weight:300!important;margin:0!important}
.rbtd-role-card-link,.rbtd-role-quiet{margin-top:27px!important;padding-top:18px!important;border-top:1px solid rgba(10,26,47,.12)!important}
.rbtd-role-card-link .et_pb_button{background:transparent!important;border:0!important;color:var(--rbtd-gold)!important;padding:0!important;font-family:var(--rbtd-sans)!important;font-size:10px!important;letter-spacing:2.5px!important;text-transform:uppercase!important}
.rbtd-role-quiet p{font-family:var(--rbtd-sans)!important;color:#b2b2b2!important;font-size:9.5px!important;line-height:1.4!important;letter-spacing:1.9px!important;text-transform:uppercase!important;margin:0!important}
.rbtd-register-row{margin-top:58px!important}
.rbtd-register-row .et_pb_button{min-width:290px!important}

/* WHY JOIN — dark subtle grid */
.rbtd-why{padding:108px 0 112px!important;background-color:var(--rbtd-navy)!important;background-image:linear-gradient(rgba(207,159,85,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(207,159,85,.075) 1px,transparent 1px)!important;background-size:120px 120px!important;background-position:center top!important}
.rbtd-why-row{display:flex!important;gap:115px!important;align-items:center!important}
.rbtd-why-row>.et_pb_column{min-width:0!important}
.rbtd-why-copy{flex:0 1 49%!important}
.rbtd-why-list-col{flex:0 1 51%!important}
.rbtd-why .rbtd-big-heading h2{color:#fff!important;font-size:58px!important;line-height:1.03!important}
.rbtd-why .rbtd-eyebrow{margin-bottom:30px!important}
.rbtd-why-intro{margin-top:38px!important}
.rbtd-why-intro p{font-family:var(--rbtd-sans)!important;color:#e1d8c8!important;font-size:18px!important;line-height:1.65!important;font-weight:300!important;margin:0!important}
.rbtd-std-list{display:grid!important;grid-template-columns:1fr 1fr!important;gap:40px 62px!important}
.rbtd-std-item{display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;gap:18px!important;align-items:start!important}
.rbtd-std-icon svg{width:23px;height:23px;stroke:var(--rbtd-gold);stroke-width:1.35;fill:none;stroke-linecap:round;stroke-linejoin:round}
.rbtd-std-copy p{font-family:var(--rbtd-sans)!important;color:#e3daca!important;font-size:17px!important;line-height:1.6!important;font-weight:300!important;margin:0!important}

/* CTA */
.rbtd-cta{position:relative!important;overflow:hidden!important;min-height:650px!important;display:flex!important;align-items:center!important;text-align:center!important;background:var(--rbtd-navy)!important}
.rbtd-cta:after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(rgba(10,26,47,.62),rgba(10,26,47,.83));pointer-events:none}
.rbtd-cta-content{position:relative!important;z-index:2!important;padding:90px 0!important}
.rbtd-cta-content>.et_pb_column{max-width:1480px!important;margin:auto!important}
.rbtd-cta-heading h2{font-family:var(--rbtd-serif)!important;color:#fff!important;font-size:clamp(52px,4.4vw,70px)!important;line-height:1.03!important;font-weight:600!important;margin:0 0 34px!important}
.rbtd-cta-copy p{font-family:var(--rbtd-sans)!important;color:#dfd6c5!important;font-size:18px!important;line-height:1.75!important;font-weight:300!important;max-width:1420px!important;margin:0 auto 42px!important}
.rbtd-cta .rbtd-btn-solid .et_pb_button{min-width:345px!important;padding:23px 30px!important;font-size:12px!important}
.rbtd-cta-back{margin-top:32px!important}
.rbtd-cta-back .et_pb_button{border:0!important;background:transparent!important;color:#e5dccd!important;font-size:11px!important;letter-spacing:2.5px!important;padding:0!important}

/* PROOF */
.rbtd-proof{padding:52px 0!important;text-align:center!important}
.rbtd-stars p{font-family:var(--rbtd-sans)!important;color:var(--rbtd-gold)!important;letter-spacing:4px!important;font-size:14px!important;margin:0 0 8px!important}
.rbtd-proof-copy p{font-family:var(--rbtd-sans)!important;color:#666!important;font-size:12px!important;margin:0 0 24px!important}
.rbtd-proof-copy a{color:var(--rbtd-navy)!important;text-decoration:underline!important}
.rbtd-proof-badges{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;flex-wrap:wrap!important}
.rbtd-proof-badge{background:#fff!important;border:1px solid rgba(10,26,47,.10)!important;padding:6px 10px!important}
.rbtd-proof-badge img{height:38px!important;width:auto!important;max-width:112px!important;object-fit:contain!important;display:block!important}

@media(max-width:1260px){
  .rbtd-wrap{width:min(1180px,calc(100% - 56px))!important}
  .rbtd-role-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .rbtd-hero-heading h1{white-space:normal}
}
@media(max-width:980px){
  .rbtd-wrap{width:calc(100% - 44px)!important}
  .rbtd-section{padding:82px 0!important}
  .rbtd-hero{min-height:520px!important}
  .rbtd-hero-content>.et_pb_column{max-width:760px!important;margin-left:0!important}
  .rbtd-split,.rbtd-why-row{display:grid!important;grid-template-columns:1fr!important;gap:46px!important}
  .rbtd-intro-image img{height:430px!important}
  .rbtd-duty-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .rbtd-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .rbtd-vac{grid-template-columns:1fr!important}
  .rbtd-vac-actions{grid-template-columns:150px 190px!important;justify-content:start!important}
  .rbtd-std-list{grid-template-columns:1fr 1fr!important}
  .rbtd-cta{min-height:540px!important}
}
@media(max-width:640px){
  .rbtd-wrap{width:calc(100% - 36px)!important}
  .rbtd-section{padding:66px 0!important}
  .rbtd-eyebrow p{font-size:10px!important;letter-spacing:3px!important}
  .rbtd-eyebrow .et_pb_text_inner:before{width:30px}
  .rbtd-hero{min-height:470px!important;align-items:flex-end!important}
  .rbtd-hero-content{padding:0 0 54px!important}
  .rbtd-hero-heading h1{font-size:46px!important;line-height:1.02!important}
  .rbtd-hero-copy{margin-top:23px!important}
  .rbtd-hero-copy p{font-size:15.5px!important;line-height:1.62!important}
  .rbtd-intro{padding:70px 0!important}
  .rbtd-intro .rbtd-big-heading h2,.rbtd-big-heading h2{font-size:39px!important}
  .rbtd-section-heading h2{font-size:38px!important}
  .rbtd-lead p,.rbtd-sec-intro p{font-size:15.5px!important;line-height:1.68!important}
  .rbtd-intro-image img{height:300px!important}
  .rbtd-bg-grid{background-size:68px 68px!important}
  .rbtd-responsibilities{padding:70px 0!important}
  .rbtd-duty-grid{grid-template-columns:1fr!important;gap:30px!important}
  .rbtd-duty{min-height:0!important;padding-top:22px!important}
  .rbtd-roles{padding:76px 0!important}
  .rbtd-vac-list{margin-bottom:60px!important}
  .rbtd-vac{padding:23px 18px!important;min-height:0!important}
  .rbtd-vac-actions{grid-template-columns:1fr!important;gap:10px!important}
  .rbtd-btn-link .et_pb_button{display:inline-block!important;width:auto!important}
  .rbtd-role-grid{grid-template-columns:1fr!important;gap:42px!important}
  .rbtd-role-ph{aspect-ratio:1.42/1!important}
  .rbtd-register-row .et_pb_button{min-width:0!important;width:100%!important}
  .rbtd-why{padding:74px 0!important;background-size:74px 74px!important}
  .rbtd-why .rbtd-big-heading h2{font-size:42px!important}
  .rbtd-why-intro{margin-top:26px!important}
  .rbtd-std-list{grid-template-columns:1fr!important;gap:24px!important}
  .rbtd-std-copy p{font-size:15.5px!important}
  .rbtd-cta{min-height:500px!important}
  .rbtd-cta-content{padding:65px 0!important}
  .rbtd-cta-heading h2{font-size:42px!important;margin-bottom:24px!important}
  .rbtd-cta-copy p{font-size:15.5px!important;margin-bottom:30px!important}
  .rbtd-cta .rbtd-btn-solid .et_pb_button{min-width:0!important;width:100%!important;padding:19px 22px!important}
  .rbtd-proof-badge img{height:32px!important;max-width:96px!important}
}

/* =========================================================
   v0.2.1 — MOBILE LAYOUT LOCK
   Fixes Divi column widths that were keeping content squeezed
   to the left on phones. Also normalises mobile buttons.
   ========================================================= */
@media (max-width: 640px){

  /* ---------- GLOBAL WIDTH / DIVI FLEX RESET ---------- */
  body.rbtd-technical-page .rbtd-wrap,
  body.rbtd-technical-page .et_pb_row.rbtd-wrap{
    width: calc(100% - 40px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.rbtd-technical-page .rbtd-wrap > .et_pb_column,
  body.rbtd-technical-page .rbtd-split > .et_pb_column,
  body.rbtd-technical-page .rbtd-why-row > .et_pb_column,
  body.rbtd-technical-page .rbtd-hero-content > .et_pb_column,
  body.rbtd-technical-page .rbtd-vac-list > .et_pb_column,
  body.rbtd-technical-page .rbtd-role-cards-row > .et_pb_column,
  body.rbtd-technical-page .rbtd-register-row > .et_pb_column,
  body.rbtd-technical-page .rbtd-proof-wrap > .et_pb_column,
  body.rbtd-technical-page .rbtd-cta-content > .et_pb_column{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    flex:0 0 100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  body.rbtd-technical-page .rbtd-split,
  body.rbtd-technical-page .rbtd-why-row{
    display:block !important;
    width:calc(100% - 40px) !important;
  }

  body.rbtd-technical-page .rbtd-copy-col,
  body.rbtd-technical-page .rbtd-image-col,
  body.rbtd-technical-page .rbtd-why-copy,
  body.rbtd-technical-page .rbtd-why-list-col{
    width:100% !important;
    max-width:100% !important;
    flex-basis:100% !important;
  }

  /* ---------- HERO ---------- */
  .rbtd-hero{
    min-height:460px !important;
    align-items:center !important;
  }

  .rbtd-hero-content{
    padding:48px 0 42px !important;
    text-align:center !important;
  }

  .rbtd-hero-content > .et_pb_column{
    margin:auto !important;
  }

  .rbtd-hero-eyebrow .et_pb_text_inner{
    justify-content:center !important;
  }

  .rbtd-hero-heading h1{
    font-size:44px !important;
    line-height:1.02 !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .rbtd-hero-copy p{
    max-width:330px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
    font-size:15px !important;
    line-height:1.55 !important;
  }

  /* ---------- INTRO ---------- */
  .rbtd-intro{
    padding:64px 0 !important;
  }

  .rbtd-intro .rbtd-copy-col{
    text-align:left !important;
  }

  .rbtd-intro .rbtd-eyebrow{
    margin-bottom:22px !important;
  }

  .rbtd-intro .rbtd-big-heading h2{
    font-size:37px !important;
    line-height:1.06 !important;
  }

  .rbtd-intro .rbtd-lead p{
    font-size:15px !important;
    line-height:1.62 !important;
  }

  .rbtd-intro .rbtd-quote{
    margin-top:24px !important;
  }

  .rbtd-intro .rbtd-quote p{
    font-size:19px !important;
  }

  .rbtd-image-col{
    margin-top:34px !important;
  }

  .rbtd-intro-image,
  .rbtd-intro-image .et_pb_image_wrap{
    width:100% !important;
  }

  .rbtd-intro-image img{
    width:100% !important;
    height:270px !important;
    object-fit:cover !important;
  }

  /* ---------- RESPONSIBILITIES ---------- */
  .rbtd-responsibilities{
    padding:62px 0 58px !important;
  }

  .rbtd-responsibilities .rbtd-sec-head{
    width:calc(100% - 40px) !important;
    margin:0 auto 42px !important;
  }

  .rbtd-responsibilities .rbtd-section-heading h2{
    font-size:37px !important;
    line-height:1.08 !important;
  }

  .rbtd-duty-grid{
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
  }

  .rbtd-duty{
    width:100% !important;
    min-height:0 !important;
    padding:24px 0 26px !important;
  }

  .rbtd-duty:first-child{
    padding-top:22px !important;
  }

  .rbtd-icon-module{
    margin-bottom:16px !important;
  }

  .rbtd-duty-title h3{
    font-size:21px !important;
  }

  .rbtd-duty-copy p{
    max-width:none !important;
    font-size:14.5px !important;
    line-height:1.58 !important;
  }

  /* ---------- ROLES HEADING ---------- */
  .rbtd-roles{
    padding:68px 0 70px !important;
  }

  .rbtd-roles .rbtd-sec-head{
    width:calc(100% - 40px) !important;
    max-width:none !important;
    margin:0 auto 45px !important;
    text-align:center !important;
  }

  .rbtd-roles .rbtd-sec-head .rbtd-eyebrow .et_pb_text_inner{
    justify-content:center !important;
  }

  .rbtd-roles .rbtd-section-heading h2{
    font-size:38px !important;
    line-height:1.05 !important;
    text-align:center !important;
  }

  .rbtd-roles .rbtd-sec-intro p{
    text-align:center !important;
    font-size:15px !important;
    line-height:1.6 !important;
  }

  /* ---------- OPEN VACANCY CARDS ---------- */
  .rbtd-vac-list{
    width:calc(100% - 40px) !important;
    margin:0 auto 54px !important;
  }

  .rbtd-vac{
    width:100% !important;
    display:block !important;
    min-height:0 !important;
    padding:22px 18px 20px !important;
    margin-bottom:14px !important;
    box-sizing:border-box !important;
  }

  .rbtd-vac-copy{
    width:100% !important;
  }

  .rbtd-vac-desc p{
    max-width:none !important;
    font-size:14.5px !important;
    line-height:1.55 !important;
  }

  .rbtd-vac-meta p{
    font-size:9px !important;
    letter-spacing:1.8px !important;
  }

  .rbtd-vac-actions{
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    margin-top:20px !important;
  }

  .rbtd-vac-actions .et_pb_button_module_wrapper{
    width:100% !important;
    display:block !important;
    text-align:center !important;
    margin:0 !important;
  }

  .rbtd-vac-actions .et_pb_button{
    width:100% !important;
    max-width:none !important;
    display:block !important;
    box-sizing:border-box !important;
    text-align:center !important;
    margin:0 !important;
  }

  .rbtd-btn .et_pb_button,
  .rbtd-btn .et_pb_button:hover{
    padding:16px 18px !important;
    font-size:11px !important;
    line-height:1.2 !important;
    letter-spacing:2px !important;
    border-radius:0 !important;
  }

  .rbtd-btn .et_pb_button:after,
  .rbtd-btn .et_pb_button:hover:after{
    display:none !important;
    content:none !important;
  }

  .rbtd-btn-link .et_pb_button,
  .rbtd-btn-link .et_pb_button:hover{
    width:100% !important;
    padding:14px 10px 10px !important;
    border:1px solid rgba(207,159,85,.48) !important;
    color:var(--rbtd-navy) !important;
    background:#fff !important;
  }

  /* ---------- ROLE CARDS ---------- */
  .rbtd-role-cards-row{
    width:calc(100% - 40px) !important;
  }

  .rbtd-role-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:38px !important;
    width:100% !important;
  }

  .rbtd-role-card{
    width:100% !important;
    max-width:none !important;
  }

  .rbtd-role-ph{
    width:100% !important;
    aspect-ratio:1.45 / 1 !important;
  }

  .rbtd-role-card-title{
    margin-top:20px !important;
  }

  .rbtd-role-card-title h3{
    font-size:23px !important;
    margin-bottom:10px !important;
  }

  .rbtd-role-card-copy p{
    font-size:14.5px !important;
    line-height:1.58 !important;
  }

  .rbtd-role-card-link,
  .rbtd-role-quiet{
    margin-top:18px !important;
    padding-top:15px !important;
  }

  .rbtd-role-card-link .et_pb_button{
    width:auto !important;
    display:inline-block !important;
    padding:0 !important;
    text-align:left !important;
  }

  .rbtd-register-row{
    width:calc(100% - 40px) !important;
    margin:42px auto 0 !important;
  }

  .rbtd-register-row .et_pb_button_module_wrapper{
    width:100% !important;
    text-align:center !important;
  }

  .rbtd-register-row .et_pb_button{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    display:block !important;
    box-sizing:border-box !important;
  }

  /* ---------- WHY JOIN ---------- */
  .rbtd-why{
    padding:66px 0 70px !important;
    background-size:72px 72px !important;
  }

  .rbtd-why-row{
    width:calc(100% - 40px) !important;
    margin:0 auto !important;
  }

  .rbtd-why-copy{
    text-align:left !important;
    margin-bottom:42px !important;
  }

  .rbtd-why .rbtd-big-heading h2{
    font-size:39px !important;
    line-height:1.05 !important;
  }

  .rbtd-why-intro p{
    font-size:15px !important;
    line-height:1.55 !important;
  }

  .rbtd-std-list{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:22px !important;
    width:100% !important;
  }

  .rbtd-std-item{
    width:100% !important;
    grid-template-columns:25px minmax(0,1fr) !important;
    gap:14px !important;
  }

  .rbtd-std-copy p{
    font-size:15px !important;
    line-height:1.55 !important;
  }

  /* ---------- CTA ---------- */
  .rbtd-cta{
    min-height:500px !important;
    align-items:center !important;
  }

  .rbtd-cta-content{
    width:calc(100% - 40px) !important;
    padding:58px 0 !important;
    text-align:center !important;
  }

  .rbtd-cta-heading h2{
    font-size:40px !important;
    line-height:1.03 !important;
    margin-bottom:22px !important;
    text-align:center !important;
  }

  .rbtd-cta-copy p{
    max-width:335px !important;
    margin:0 auto 28px !important;
    font-size:14px !important;
    line-height:1.65 !important;
    text-align:center !important;
  }

  .rbtd-cta .rbtd-btn-solid,
  .rbtd-cta .rbtd-btn-solid .et_pb_button_module_wrapper{
    width:100% !important;
  }

  .rbtd-cta .rbtd-btn-solid .et_pb_button,
  .rbtd-cta .rbtd-btn-solid .et_pb_button:hover{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    display:block !important;
    padding:18px 16px !important;
  }

  .rbtd-cta-back{
    margin-top:22px !important;
    text-align:center !important;
  }

  .rbtd-cta-back .et_pb_button{
    width:auto !important;
    display:inline-block !important;
    text-align:center !important;
  }

  /* ---------- PROOF / ACCREDITATIONS ---------- */
  .rbtd-proof{
    padding:40px 0 44px !important;
  }

  .rbtd-proof-wrap{
    width:calc(100% - 40px) !important;
    text-align:center !important;
  }

  .rbtd-proof-badges{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    align-items:center !important;
  }

  .rbtd-proof-badge{
    min-width:0 !important;
    padding:6px !important;
  }

  .rbtd-proof-badge img{
    width:100% !important;
    max-width:78px !important;
    height:30px !important;
    margin:auto !important;
    object-fit:contain !important;
  }
}

@media (max-width: 390px){
  body.rbtd-technical-page .rbtd-wrap,
  body.rbtd-technical-page .et_pb_row.rbtd-wrap,
  .rbtd-responsibilities .rbtd-sec-head,
  .rbtd-roles .rbtd-sec-head,
  .rbtd-vac-list,
  .rbtd-role-cards-row,
  .rbtd-register-row,
  .rbtd-why-row,
  .rbtd-cta-content,
  .rbtd-proof-wrap{
    width:calc(100% - 30px) !important;
  }

  .rbtd-hero-heading h1{font-size:40px !important}
  .rbtd-intro .rbtd-big-heading h2,
  .rbtd-section-heading h2{font-size:34px !important}
  .rbtd-why .rbtd-big-heading h2{font-size:36px !important}
  .rbtd-cta-heading h2{font-size:37px !important}
}

/* =========================================================
   v0.2.3 — EXACT ROLE CARD RHYTHM
   Matches the approved Netlify reference. This block is
   intentionally high-specificity because Divi 5 injects
   flex module gaps and global button styling.
   ========================================================= */

body.rbtd-technical-page .rbtd-role-grid,
body.rbtd-technical-page .rbtd-role-card{
  --vertical-gap:0px !important;
  --horizontal-gap:0px !important;
  --module-gutter:0px !important;
  row-gap:0 !important;
}

body.rbtd-technical-page .rbtd-role-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  column-gap:30px !important;
  row-gap:46px !important;
  align-items:start !important;
}

body.rbtd-technical-page .rbtd-role-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  gap:0 !important;
  min-height:0 !important;
  height:auto !important;
}

body.rbtd-technical-page .rbtd-role-card > *,
body.rbtd-technical-page .rbtd-role-card > .et_pb_module,
body.rbtd-technical-page .rbtd-role-card > .et_pb_group,
body.rbtd-technical-page .rbtd-role-card .et_pb_module{
  margin-bottom:0 !important;
}

/* Image block */
body.rbtd-technical-page .rbtd-role-ph{
  margin:0 !important;
  padding:0 !important;
  aspect-ratio:1.33/1 !important;
}

/* Reference: compact 30px-ish image-to-title rhythm. */
body.rbtd-technical-page .rbtd-role-card-title{
  margin:29px 0 0 !important;
  padding:0 !important;
  opacity:1 !important;
}

body.rbtd-technical-page .rbtd-role-card-title .et_pb_text_inner,
body.rbtd-technical-page .rbtd-role-card-title h3{
  margin:0 !important;
  padding:0 !important;
  opacity:1 !important;
  color:#0A1A2F !important;
}

body.rbtd-technical-page .rbtd-role-card-title h3{
  font-family:var(--rbtd-serif) !important;
  font-size:23px !important;
  line-height:1.12 !important;
  font-weight:600 !important;
}

/* Reference: description starts close below title, never flex-stretches. */
body.rbtd-technical-page .rbtd-role-card-copy{
  flex:0 0 auto !important;
  margin:13px 0 0 !important;
  padding:0 !important;
  min-height:0 !important;
}

body.rbtd-technical-page .rbtd-role-card-copy .et_pb_text_inner,
body.rbtd-technical-page .rbtd-role-card-copy p{
  margin:0 !important;
  padding:0 !important;
}

body.rbtd-technical-page .rbtd-role-card-copy p{
  font-family:var(--rbtd-sans) !important;
  color:#73777f !important;
  font-size:15px !important;
  line-height:1.62 !important;
  font-weight:300 !important;
}

/* Divider/link follows copy; no equal-height spacer. */
body.rbtd-technical-page .rbtd-role-card-link,
body.rbtd-technical-page .rbtd-role-quiet{
  flex:0 0 auto !important;
  margin:22px 0 0 !important;
  padding:16px 0 0 !important;
  border-top:1px solid rgba(10,26,47,.13) !important;
  min-height:0 !important;
  height:auto !important;
  background:transparent !important;
}

/* NEW text-module implementation */
body.rbtd-technical-page .rbtd-role-card-link p{
  margin:0 !important;
  padding:0 !important;
}
body.rbtd-technical-page .rbtd-role-card-link a{
  display:inline-block !important;
  width:auto !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#CF9F55 !important;
  font-family:var(--rbtd-sans) !important;
  font-size:10px !important;
  line-height:1.35 !important;
  font-weight:400 !important;
  letter-spacing:2.35px !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
}

/* Backward compatibility: existing generated page may still contain Divi Button module. */
body.rbtd-technical-page .rbtd-role-card-link.et_pb_button_module_wrapper,
body.rbtd-technical-page .rbtd-role-card-link .et_pb_button_module_wrapper{
  display:block !important;
  width:100% !important;
  margin:22px 0 0 !important;
  padding:16px 0 0 !important;
  border-top:1px solid rgba(10,26,47,.13) !important;
  text-align:left !important;
  background:transparent !important;
}

body.rbtd-technical-page .rbtd-role-card-link.et_pb_button_module_wrapper .et_pb_button,
body.rbtd-technical-page .rbtd-role-card-link .et_pb_button,
body.rbtd-technical-page .rbtd-role-card-link.et_pb_button_module_wrapper .et_pb_button:hover,
body.rbtd-technical-page .rbtd-role-card-link .et_pb_button:hover{
  display:inline-block !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  background-image:none !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  color:#CF9F55 !important;
  font-family:var(--rbtd-sans) !important;
  font-size:10px !important;
  line-height:1.35 !important;
  font-weight:400 !important;
  letter-spacing:2.35px !important;
  text-transform:uppercase !important;
  transform:none !important;
  position:static !important;
}

body.rbtd-technical-page .rbtd-role-card-link .et_pb_button:before,
body.rbtd-technical-page .rbtd-role-card-link .et_pb_button:after,
body.rbtd-technical-page .rbtd-role-card-link.et_pb_button_module_wrapper .et_pb_button:before,
body.rbtd-technical-page .rbtd-role-card-link.et_pb_button_module_wrapper .et_pb_button:after{
  display:none !important;
  content:none !important;
}

body.rbtd-technical-page .rbtd-role-quiet p{
  margin:0 !important;
  padding:0 !important;
  font-family:var(--rbtd-sans) !important;
  color:#aaa !important;
  font-size:9px !important;
  line-height:1.4 !important;
  letter-spacing:1.8px !important;
  text-transform:uppercase !important;
}

/* Tablet */
@media (max-width:980px){
  body.rbtd-technical-page .rbtd-role-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    column-gap:24px !important;
    row-gap:38px !important;
  }
}

/* Mobile */
@media (max-width:640px){
  body.rbtd-technical-page .rbtd-role-grid{
    grid-template-columns:1fr !important;
    row-gap:34px !important;
  }
  body.rbtd-technical-page .rbtd-role-card-title{margin-top:20px !important;}
  body.rbtd-technical-page .rbtd-role-card-title h3{font-size:22px !important;}
  body.rbtd-technical-page .rbtd-role-card-copy{margin-top:10px !important;}
  body.rbtd-technical-page .rbtd-role-card-copy p{font-size:14px !important;line-height:1.65 !important;}
  body.rbtd-technical-page .rbtd-role-card-link,
  body.rbtd-technical-page .rbtd-role-quiet{margin-top:17px !important;padding-top:13px !important;}

  /* Override v0.2.1 mobile button rule specifically for role links. */
  body.rbtd-technical-page .rbtd-role-card-link.et_pb_button_module_wrapper,
  body.rbtd-technical-page .rbtd-role-card-link .et_pb_button_module_wrapper{
    width:100% !important;
    margin:17px 0 0 !important;
    padding:13px 0 0 !important;
    border-top:1px solid rgba(10,26,47,.13) !important;
    text-align:left !important;
  }
  body.rbtd-technical-page .rbtd-role-card-link.et_pb_button_module_wrapper .et_pb_button,
  body.rbtd-technical-page .rbtd-role-card-link .et_pb_button,
  body.rbtd-technical-page .rbtd-role-card-link.et_pb_button_module_wrapper .et_pb_button:hover,
  body.rbtd-technical-page .rbtd-role-card-link .et_pb_button:hover{
    width:auto !important;
    display:inline-block !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:#CF9F55 !important;
    text-align:left !important;
  }
}


/* =========================================================
   v0.2.4 — ROLE CARD HARD RESET / APPROVED REFERENCE
   The card internals are deliberately controlled as a small
   grid so Divi 5's flex/module gutter cannot stretch them.
   ========================================================= */

@media (min-width:981px){
  body.rbtd-technical-page .rbtd-role-grid{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    column-gap:30px !important;
    row-gap:46px !important;
    align-items:start !important;
  }

  body.rbtd-technical-page .rbtd-role-card{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-rows:auto auto 112px auto !important;
    align-items:start !important;
    align-content:start !important;
    gap:0 !important;
    row-gap:0 !important;
    min-height:0 !important;
    height:auto !important;
    --vertical-gap:0px !important;
    --horizontal-gap:0px !important;
    --module-gutter:0px !important;
  }

  body.rbtd-technical-page .rbtd-role-card > *{
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  body.rbtd-technical-page .rbtd-role-ph{
    grid-row:1 !important;
    margin:0 !important;
    padding:0 !important;
  }

  body.rbtd-technical-page .rbtd-role-card-title{
    grid-row:2 !important;
    margin:27px 0 0 !important;
    padding:0 !important;
  }

  body.rbtd-technical-page .rbtd-role-card-title h3{
    margin:0 !important;
    padding:0 !important;
    color:#0A1A2F !important;
    opacity:1 !important;
    font-family:var(--rbtd-serif) !important;
    font-size:23px !important;
    line-height:1.15 !important;
    font-weight:600 !important;
  }

  body.rbtd-technical-page .rbtd-role-card-copy{
    grid-row:3 !important;
    align-self:start !important;
    margin:13px 0 0 !important;
    padding:0 !important;
    min-height:0 !important;
    height:auto !important;
    flex:none !important;
  }

  body.rbtd-technical-page .rbtd-role-card-copy p{
    margin:0 !important;
    padding:0 !important;
    font-family:var(--rbtd-sans) !important;
    color:#73777f !important;
    font-size:14px !important;
    line-height:1.65 !important;
    font-weight:300 !important;
  }

  body.rbtd-technical-page .rbtd-role-card-link,
  body.rbtd-technical-page .rbtd-role-quiet{
    grid-row:4 !important;
    align-self:start !important;
    margin:0 !important;
    padding:15px 0 0 !important;
    border-top:1px solid rgba(10,26,47,.13) !important;
    min-height:0 !important;
    height:auto !important;
    background:transparent !important;
  }

  /* Old Divi Button markup: make it indistinguishable from the approved text link. */
  body.rbtd-technical-page .rbtd-role-card a.rbtd-role-action-anchor,
  body.rbtd-technical-page .rbtd-role-card .rbtd-role-card-link a,
  body.rbtd-technical-page .rbtd-role-card .rbtd-role-card-link .et_pb_button,
  body.rbtd-technical-page .rbtd-role-card .rbtd-role-card-link .et_pb_button:hover{
    display:inline !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    background:none !important;
    background-color:transparent !important;
    background-image:none !important;
    border:0 !important;
    border-radius:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    color:#CF9F55 !important;
    font-family:var(--rbtd-sans) !important;
    font-size:10px !important;
    line-height:1.3 !important;
    font-weight:400 !important;
    letter-spacing:2.35px !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
    transform:none !important;
  }

  body.rbtd-technical-page .rbtd-role-card .rbtd-role-card-link .et_pb_button:before,
  body.rbtd-technical-page .rbtd-role-card .rbtd-role-card-link .et_pb_button:after,
  body.rbtd-technical-page a.rbtd-role-action-anchor:before,
  body.rbtd-technical-page a.rbtd-role-action-anchor:after{
    display:none !important;
    content:none !important;
  }

  /* Keep the second row close to the first, matching the reference. */
  body.rbtd-technical-page .rbtd-role-cards-row{
    margin-top:0 !important;
    margin-bottom:0 !important;
  }
}

@media (max-width:980px){
  body.rbtd-technical-page .rbtd-role-card{
    display:block !important;
    min-height:0 !important;
    height:auto !important;
    --vertical-gap:0px !important;
    --module-gutter:0px !important;
  }
  body.rbtd-technical-page .rbtd-role-card-title{margin:22px 0 0 !important;}
  body.rbtd-technical-page .rbtd-role-card-copy{margin:10px 0 0 !important;}
  body.rbtd-technical-page .rbtd-role-card-link,
  body.rbtd-technical-page .rbtd-role-quiet{margin:18px 0 0 !important;padding:13px 0 0 !important;}
}

/* =========================================================
   v0.2.5 — ROLE DIVIDER + GOLD ACTION MICRO-INTERACTION
   Approved reference details:
   - independent subtle divider module
   - champagne/gold action #e0c192
   - underline grows left → right on hover
   - arrow extends to the right on hover
   ========================================================= */

body.rbtd-technical-page{
  --rbtd-role-gold:#e0c192;
}

/* We now have five explicit native Divi items in every role card:
   image / title / copy / divider / action-or-status. */
@media (min-width:981px){
  body.rbtd-technical-page .rbtd-role-card{
    grid-template-rows:auto auto 118px auto auto !important;
  }

  body.rbtd-technical-page .rbtd-role-ph{grid-row:1 !important;}
  body.rbtd-technical-page .rbtd-role-card-title{grid-row:2 !important;}
  body.rbtd-technical-page .rbtd-role-card-copy{grid-row:3 !important;}
  body.rbtd-technical-page .rbtd-role-divider{grid-row:4 !important;}
  body.rbtd-technical-page .rbtd-role-card-link,
  body.rbtd-technical-page .rbtd-role-quiet{grid-row:5 !important;}
}

/* The horizontal rule is a real standalone DIV, not a border on the link. */
body.rbtd-technical-page .rbtd-role-divider{
  margin:0 !important;
  padding:0 !important;
  width:100% !important;
  min-height:1px !important;
  height:1px !important;
  line-height:0 !important;
  overflow:visible !important;
}
body.rbtd-technical-page .rbtd-role-divider .et_pb_text_inner{
  margin:0 !important;
  padding:0 !important;
  line-height:0 !important;
}
body.rbtd-technical-page .rbtd-role-divider-line{
  display:block !important;
  width:100% !important;
  height:1px !important;
  margin:0 !important;
  padding:0 !important;
  background:rgba(10,26,47,.12) !important;
}

/* Action/status sits beneath the independent divider. */
body.rbtd-technical-page .rbtd-role-card-link,
body.rbtd-technical-page .rbtd-role-quiet{
  border-top:0 !important;
  margin:0 !important;
  padding:17px 0 0 !important;
  background:transparent !important;
}

body.rbtd-technical-page .rbtd-role-card-link p{
  margin:0 !important;
  padding:0 !important;
}

body.rbtd-technical-page .rbtd-role-card-link a.rbtd-role-action-anchor,
body.rbtd-technical-page .rbtd-role-card-link a{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:11px !important;
  width:auto !important;
  margin:0 !important;
  padding:0 0 6px !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--rbtd-role-gold) !important;
  font-family:var(--rbtd-sans) !important;
  font-size:10px !important;
  line-height:1.35 !important;
  font-weight:400 !important;
  letter-spacing:2.45px !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

/* The reference link draws itself in on hover. */
body.rbtd-technical-page .rbtd-role-card-link a.rbtd-role-action-anchor::after,
body.rbtd-technical-page .rbtd-role-card-link a::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  left:0 !important;
  bottom:0 !important;
  width:100% !important;
  height:1px !important;
  background:var(--rbtd-role-gold) !important;
  transform:scaleX(0) !important;
  transform-origin:left center !important;
  transition:transform .5s cubic-bezier(.22,.61,.36,1) !important;
}
body.rbtd-technical-page .rbtd-role-card-link a.rbtd-role-action-anchor:hover::after,
body.rbtd-technical-page .rbtd-role-card-link a:hover::after,
body.rbtd-technical-page .rbtd-role-card-link a.rbtd-role-action-anchor:focus-visible::after,
body.rbtd-technical-page .rbtd-role-card-link a:focus-visible::after{
  transform:scaleX(1) !important;
}

body.rbtd-technical-page .rbtd-role-action-arrow{
  display:inline-block !important;
  transform:translateX(0) !important;
  transition:transform .45s cubic-bezier(.22,.61,.36,1) !important;
}
body.rbtd-technical-page .rbtd-role-card-link a:hover .rbtd-role-action-arrow,
body.rbtd-technical-page .rbtd-role-card-link a:focus-visible .rbtd-role-action-arrow{
  transform:translateX(6px) !important;
}

body.rbtd-technical-page .rbtd-role-quiet p{
  color:#aaa !important;
}

/* Mobile/tablet: divider remains independent and spacing stays compact. */
@media (max-width:980px){
  body.rbtd-technical-page .rbtd-role-divider{
    margin:18px 0 0 !important;
  }
  body.rbtd-technical-page .rbtd-role-card-link,
  body.rbtd-technical-page .rbtd-role-quiet{
    margin:0 !important;
    padding:13px 0 0 !important;
  }
}


/* =========================================================
   v0.2.6 — ROLE CARD TYPOGRAPHY + SYMMETRICAL DIVIDER LOCK
   - body copy exactly 14px
   - equal copy track on desktop so every divider sits on one baseline
   - enough vertical room for the longest description; no text/divider overlap
   - divider remains a real native Divi module and spans the full card width
   ========================================================= */
@media (min-width:981px){
  body.rbtd-technical-page .rbtd-role-card{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-rows:auto auto 118px 1px auto !important;
    align-items:start !important;
    align-content:start !important;
    row-gap:0 !important;
    gap:0 !important;
  }

  body.rbtd-technical-page .rbtd-role-ph{grid-row:1 !important;}
  body.rbtd-technical-page .rbtd-role-card-title{grid-row:2 !important;}
  body.rbtd-technical-page .rbtd-role-card-copy{
    grid-row:3 !important;
    margin:12px 0 0 !important;
    padding:0 !important;
    min-height:0 !important;
    height:auto !important;
    overflow:visible !important;
  }
  body.rbtd-technical-page .rbtd-role-card-copy p{
    margin:0 !important;
    padding:0 !important;
    font-family:var(--rbtd-sans) !important;
    font-size:14px !important;
    line-height:1.65 !important;
    font-weight:300 !important;
    color:#73777f !important;
  }

  body.rbtd-technical-page .rbtd-role-divider{
    grid-row:4 !important;
    align-self:stretch !important;
    width:100% !important;
    min-width:100% !important;
    max-width:none !important;
    height:1px !important;
    min-height:1px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }
  body.rbtd-technical-page .rbtd-role-divider .et_pb_text_inner,
  body.rbtd-technical-page .rbtd-role-divider-line{
    display:block !important;
    width:100% !important;
    min-width:100% !important;
    max-width:none !important;
    height:1px !important;
    min-height:1px !important;
    margin:0 !important;
    padding:0 !important;
  }
  body.rbtd-technical-page .rbtd-role-divider-line{
    background:rgba(10,26,47,.12) !important;
  }

  body.rbtd-technical-page .rbtd-role-card-link,
  body.rbtd-technical-page .rbtd-role-quiet{
    grid-row:5 !important;
    margin:0 !important;
    padding:16px 0 0 !important;
    border:0 !important;
  }
}

@media (max-width:980px){
  body.rbtd-technical-page .rbtd-role-card-copy p{
    font-size:14px !important;
    line-height:1.65 !important;
  }
}

/* =========================================================
   v0.2.7 — ROLE ACTION CLEANUP + VACANCY CARD MATCH
   - VIEW ROLE never gains an underline on hover/focus
   - arrow still extends subtly to the right
   - open-vacancy cards follow approved horizontal reference
   ========================================================= */

/* 1) Role grid action: remove the hover underline completely. */
body.rbtd-technical-page .rbtd-role-card-link a.rbtd-role-action-anchor::after,
body.rbtd-technical-page .rbtd-role-card-link a::after,
body.rbtd-technical-page .rbtd-role-card-link a.rbtd-role-action-anchor:hover::after,
body.rbtd-technical-page .rbtd-role-card-link a:hover::after,
body.rbtd-technical-page .rbtd-role-card-link a.rbtd-role-action-anchor:focus-visible::after,
body.rbtd-technical-page .rbtd-role-card-link a:focus-visible::after{
  content:none !important;
  display:none !important;
  width:0 !important;
  height:0 !important;
  background:transparent !important;
  transform:none !important;
}
body.rbtd-technical-page .rbtd-role-card-link a,
body.rbtd-technical-page .rbtd-role-card-link a:hover,
body.rbtd-technical-page .rbtd-role-card-link a:focus,
body.rbtd-technical-page .rbtd-role-card-link a:focus-visible{
  text-decoration:none !important;
  border-bottom:0 !important;
  box-shadow:none !important;
}

/* 2) Approved open-vacancy cards. */
body.rbtd-technical-page .rbtd-vac-list{
  margin-bottom:82px !important;
}
body.rbtd-technical-page .rbtd-vac{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  column-gap:52px !important;
  row-gap:0 !important;
  align-items:center !important;
  min-height:0 !important;
  margin:0 0 16px !important;
  padding:28px 30px 28px 28px !important;
  background:#fff !important;
  border:1px solid #e9e3d9 !important;
  border-left:3px solid #d8aa58 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
body.rbtd-technical-page .rbtd-vac-copy{
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
}
body.rbtd-technical-page .rbtd-hiring-tag{
  margin:0 0 13px !important;
}
body.rbtd-technical-page .rbtd-hiring-tag p{
  margin:0 !important;
  padding:5px 12px !important;
  border:1px solid rgba(216,170,88,.55) !important;
  color:#d2a45b !important;
  background:#fff !important;
  font-size:9px !important;
  line-height:1 !important;
  letter-spacing:2px !important;
}
body.rbtd-technical-page .rbtd-hiring-tag p:before{
  width:6px !important;
  height:6px !important;
  background:#d8aa58 !important;
}
body.rbtd-technical-page .rbtd-vac-title{
  margin:0 0 7px !important;
}
body.rbtd-technical-page .rbtd-vac-title h3{
  margin:0 !important;
  color:var(--rbtd-navy) !important;
  font-family:var(--rbtd-serif) !important;
  font-size:22px !important;
  line-height:1.2 !important;
  font-weight:600 !important;
}
body.rbtd-technical-page .rbtd-vac-desc{
  margin:0 !important;
}
body.rbtd-technical-page .rbtd-vac-desc p{
  max-width:760px !important;
  margin:0 !important;
  color:#7d8086 !important;
  font-family:var(--rbtd-sans) !important;
  font-size:14px !important;
  line-height:1.6 !important;
  font-weight:300 !important;
}
body.rbtd-technical-page .rbtd-vac-meta{
  margin:12px 0 0 !important;
}
body.rbtd-technical-page .rbtd-vac-meta p{
  margin:0 !important;
  color:#aaa39a !important;
  font-family:var(--rbtd-sans) !important;
  font-size:9px !important;
  line-height:1.3 !important;
  letter-spacing:2.2px !important;
  text-transform:uppercase !important;
}
body.rbtd-technical-page .rbtd-vac-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:16px !important;
  width:auto !important;
  min-width:280px !important;
  margin:0 !important;
  padding:0 !important;
}
body.rbtd-technical-page .rbtd-vac-actions .rbtd-btn,
body.rbtd-technical-page .rbtd-vac-actions .et_pb_button_module_wrapper{
  margin:0 !important;
  padding:0 !important;
}
body.rbtd-technical-page .rbtd-vac-actions .rbtd-btn-solid .et_pb_button{
  min-width:96px !important;
  padding:16px 19px !important;
  background:#d4ab5d !important;
  border:1px solid #d4ab5d !important;
  color:var(--rbtd-navy) !important;
  font-size:10px !important;
  line-height:1.1 !important;
  letter-spacing:2.2px !important;
  text-align:center !important;
  text-decoration:none !important;
  box-shadow:none !important;
}
body.rbtd-technical-page .rbtd-vac-actions .rbtd-btn-solid .et_pb_button:hover,
body.rbtd-technical-page .rbtd-vac-actions .rbtd-btn-solid .et_pb_button:focus{
  background:#cfa353 !important;
  border-color:#cfa353 !important;
  color:var(--rbtd-navy) !important;
  text-decoration:none !important;
}
body.rbtd-technical-page .rbtd-vac-actions .rbtd-btn-link .et_pb_button{
  min-width:0 !important;
  width:auto !important;
  margin:0 !important;
  padding:10px 0 7px !important;
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid #d4ab5d !important;
  color:#657084 !important;
  font-size:9px !important;
  line-height:1.1 !important;
  letter-spacing:2px !important;
  text-align:left !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}
body.rbtd-technical-page .rbtd-vac-actions .rbtd-btn-link .et_pb_button:hover,
body.rbtd-technical-page .rbtd-vac-actions .rbtd-btn-link .et_pb_button:focus{
  color:var(--rbtd-navy) !important;
  text-decoration:none !important;
  border-bottom-color:#d4ab5d !important;
  box-shadow:none !important;
}
body.rbtd-technical-page .rbtd-vac-actions .et_pb_button::after,
body.rbtd-technical-page .rbtd-vac-actions .et_pb_button::before{
  display:none !important;
  content:none !important;
}

@media (max-width:980px){
  body.rbtd-technical-page .rbtd-vac{
    grid-template-columns:1fr !important;
    gap:22px !important;
    padding:25px 22px !important;
  }
  body.rbtd-technical-page .rbtd-vac-actions{
    justify-content:flex-start !important;
    min-width:0 !important;
    flex-wrap:wrap !important;
  }
}

/* =========================================================
   0.2.9 — RESPONSIBILITIES MOBILE RAIL
   Matches the approved Mission / Vision swipe-rail behaviour:
   no arrows, no dots, one large card + a visible next-card peek.
   ========================================================= */
.rbtd-duty{min-width:0!important}

@media (max-width:900px){
  body.rbtd-technical-page .rbtd-responsibilities{
    overflow:hidden!important;
  }

  body.rbtd-technical-page .rbtd-responsibilities .rbtd-wrap:not(.rbtd-sec-head),
  body.rbtd-technical-page .rbtd-responsibilities .rbtd-wrap:not(.rbtd-sec-head) > .et_pb_column{
    overflow:visible!important;
  }

  body.rbtd-technical-page .rbtd-duty-grid.rbtd-live-rail{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    align-items:stretch!important;
    grid-template-columns:none!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-x:contain!important;
    touch-action:pan-x pan-y!important;
    scroll-snap-type:x mandatory!important;
    scrollbar-width:none!important;
    gap:14px!important;
    padding-bottom:10px!important;
    width:auto!important;
    max-width:none!important;
  }
  body.rbtd-technical-page .rbtd-duty-grid.rbtd-live-rail::-webkit-scrollbar{
    display:none!important;
  }

  body.rbtd-technical-page .rbtd-duty.rbtd-live-card{
    flex-grow:0!important;
    flex-shrink:0!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:normal!important;
    margin:0!important;
    min-width:0!important;
    align-self:stretch!important;
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    border-top:1px solid rgba(10,26,47,.12)!important;
    padding:24px 14px 24px 0!important;
  }

  body.rbtd-technical-page .rbtd-duty .rbtd-icon-module{
    margin:0 0 15px!important;
  }
  body.rbtd-technical-page .rbtd-duty .rbtd-duty-title h3{
    font-size:20px!important;
    line-height:1.25!important;
    margin:0 0 10px!important;
  }
  body.rbtd-technical-page .rbtd-duty .rbtd-duty-copy p{
    font-size:14px!important;
    line-height:1.6!important;
    margin:0!important;
  }
}

@media (min-width:601px) and (max-width:900px){
  body.rbtd-technical-page .rbtd-duty.rbtd-live-root{
    flex-basis:46%!important;
    width:46%!important;
    max-width:46%!important;
  }
}

@media (max-width:600px){
  body.rbtd-technical-page .rbtd-duty.rbtd-live-root{
    flex-basis:84%!important;
    width:84%!important;
    max-width:84%!important;
  }
}
