/* Blue Naartjie landing pages. Shared styles for WPBakery rows with the class "bnlp".
   Colours, backgrounds, padding and borders live in each element's Design Options.
   This file only holds what Design Options cannot do. */

/* ---------- base ---------- */
.bnlp{font-family:Poppins,"Helvetica Neue",Arial,sans-serif;color:#25282a}
.bnlp.vc_row{margin-bottom:0!important}
.bnlp .wpb_content_element,.bnlp .vc_btn3-container,.bnlp .vc_icon_element{margin-bottom:0!important}
.bnlp h1,.bnlp h2,.bnlp h3,.bnlp h4,.bnlp h5,.bnlp h6{font-family:Poppins,"Helvetica Neue",Arial,sans-serif;margin:0;color:inherit;letter-spacing:normal}
.bnlp p{margin:0}
.bnlp .wpb_text_column p:not(:last-child){margin-bottom:14px}

/* ---------- buttons ---------- */
.bnlp .bn-btn .vc_btn3{min-height:54px;display:inline-flex;align-items:center;justify-content:center;padding:10px 28px!important;font-family:Poppins,Arial,sans-serif;font-size:19px!important;font-weight:700;text-transform:uppercase;border:0!important;border-radius:0!important;transition:background .2s}
.bnlp .bn-btn-orange .vc_btn3:hover,.bnlp .bn-btn-orange .vc_btn3:focus{background-color:#2864ae!important;color:#ffffff!important}
.bnlp .bn-btn-white .vc_btn3:hover{background-color:#f16724!important;color:#ffffff!important}

/* ---------- hero ---------- */
.bn-hero .bn-hl-head{font-size:clamp(40px,5vw,66px);line-height:1.25;font-weight:500;text-transform:uppercase;margin:0 0 30px}
.bn-hero .bn-hl{background:#f16724;color:#ffffff;padding:1px 10px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.bn-hero .bn-hl em{font-style:italic}
.bn-hero .bn-hero-panel{max-width:660px;color:#ffffff}
.bn-hero .bn-hero-panel h1{font-size:32px;line-height:1.3;font-weight:600;letter-spacing:2px;text-transform:uppercase;margin:0 0 16px;color:#ffffff}
.bn-hero .bn-hero-panel p{font-size:16px;line-height:1.5;color:#ffffff}
.bn-form .bn-form-head p{font-size:26px;font-weight:300;text-transform:uppercase;line-height:1.15;color:#ffffff}
.bn-form .bn-form-head strong{font-weight:700}
.bn-form .wpforms-container{margin:0!important}
.bn-form .wpforms-field{padding:0 0 14px!important}
.bn-form .wpforms-field-label{font-family:Poppins,Arial,sans-serif!important;font-size:14px!important;font-weight:600!important;color:#25282a!important;margin:0 0 6px!important}
.bn-form .wpforms-field input,.bn-form .wpforms-field textarea{width:100%!important;max-width:100%!important;box-sizing:border-box;font-family:Poppins,Arial,sans-serif!important;font-size:15px!important;padding:12px!important;border:1px solid #858a8e!important;border-radius:3px!important;background:#ffffff!important;color:#25282a!important;height:auto!important}
.bn-form .wpforms-field textarea{height:110px!important}
.bn-form .wpforms-submit-container{padding:0!important}
.bn-form button.wpforms-submit{width:100%!important;min-height:54px!important;background:#f16724!important;color:#ffffff!important;border:0!important;border-radius:0!important;font-family:Poppins,Arial,sans-serif!important;font-size:19px!important;font-weight:700!important;text-transform:uppercase!important;cursor:pointer}
.bn-form button.wpforms-submit:hover{background:#2864ae!important}

/* ---------- client logos ---------- */
.bn-logos .bn-logos-title h2{font-size:20px;line-height:1.3;font-weight:300;letter-spacing:2px;text-transform:uppercase}
.bn-logos .bn-logos-title strong{font-weight:700}
.bn-logo-carousel img{height:56px!important;width:auto!important;max-width:none;margin:0 auto}

/* ---------- orange heading bar ---------- */
.bn-bar{background:#f16724;color:#ffffff;padding:12px 30px 12px max(2%,calc((100vw - 1250px) / 2))}
.bn-bar h2{font-size:clamp(28px,3vw,36px);line-height:1.2;font-weight:300;text-transform:uppercase;color:#ffffff}
.bn-bar strong{font-weight:700}

/* ---------- text blocks ---------- */
.bn-lead p{font-size:16px;line-height:1.6;max-width:780px}
.bn-lead-lg p{font-size:20px;font-weight:300}
.bn-feature h4{font-size:23px;font-weight:700;color:#f16724;margin:10px 0}
.bn-feature p{font-size:16px;line-height:1.5}

/* ---------- cards (packages, formats) ---------- */
.bn-card-col .wpb_wrapper{display:flex;flex-direction:column;align-items:center;gap:14px;height:100%}
.bn-card-col .vc_column-inner{padding-left:30px!important;padding-right:30px!important;padding-bottom:20px!important}
.bn-card-img img{width:100%;aspect-ratio:668/510;object-fit:cover}
.bn-card-img,.bn-card-img .vc_figure,.bn-card-img .vc_single_image-wrapper{width:100%}
.bn-card{text-align:center}
.bn-card h3{font-size:28px;line-height:1.25;font-weight:600;text-transform:uppercase;color:#f16724;margin:6px 0 12px}
.bn-card-sm h3{font-size:24px}
.bn-card h5{font-size:18px;font-weight:600}
.bn-card h6{font-size:18px;font-weight:300;margin-bottom:12px}
.bn-card p{font-size:16px;line-height:1.5}
.bn-card-col .vc_btn3-container{margin-top:auto!important}

/* ---------- split rows (photo + blue panel) ---------- */
.bn-split .bn-slab .vc_column-inner{min-height:460px}
.bn-blue .vc_column-inner{padding:50px!important;color:#ffffff}
.bn-blue.bn-blue-left .vc_column-inner{padding-left:max(4%,calc((100vw - 1250px) / 2))!important}
.bn-blue-text{color:#ffffff}
.bn-blue-text h2{font-size:32px;line-height:1.3;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:#ffffff;margin-bottom:18px}
.bn-blue-text p{font-size:16px;line-height:1.5;color:#ffffff}
.bn-blue-big h2{font-size:42px;line-height:1.2}
.bn-blue-big p{font-size:21px;line-height:1.55;font-weight:300}
.bn-blue-big strong{font-weight:600}
.bn-steps{list-style:none;margin:6px 0 0;padding:0;counter-reset:bnstep}
.bn-steps li{position:relative;padding:18px 0 18px 64px;border-top:2px solid #6984c2;counter-increment:bnstep;margin:0}
.bn-steps li:last-child{border-bottom:2px solid #6984c2}
.bn-steps li::before{content:counter(bnstep);position:absolute;left:0;top:18px;font-size:40px;line-height:1;font-weight:600}
.bn-steps h5{font-size:20px;font-weight:600;letter-spacing:1px;text-transform:uppercase;margin:0 0 8px;color:#ffffff}
.bn-steps p{font-size:17px!important;font-weight:300;line-height:1.55!important}
.bn-day{list-style:none;margin:20px 0 0;padding:0}
.bn-day li{padding:14px 0;border-top:2px solid #6984c2;font-size:18px;font-weight:300;margin:0}
.bn-day li:last-child{border-bottom:2px solid #6984c2}
.bn-day strong{display:block;font-weight:600}
.bn-blue-row{margin-top:22px!important}
.bn-blue-row .vc_column-inner{padding:0!important}
.bn-blue-item h3{font-size:23px;font-weight:600;margin:0 0 6px;color:#ffffff}
.bn-blue-item p{font-size:18px;font-weight:300;line-height:1.5;color:#ffffff}
.bn-has-mark .vc_column-inner{position:relative;padding:60px 60px 60px 110px!important;justify-content:center}
.bn-mark{position:absolute!important;left:-75px;top:50px;width:150px;z-index:2}
.bn-mark img{width:150px;height:150px}

/* ---------- budget boxes ---------- */
.bn-budget-col .vc_column-inner{min-height:340px}
.bn-budget-col .wpb_wrapper,.bn-budget-col .bn-budget,.bn-budget-col .bn-budget>.wpb_wrapper{height:100%}
.bn-budget>.wpb_wrapper{display:flex;flex-direction:column;gap:18px}
.bn-budget h3{font-size:26px;line-height:1.25;font-weight:600;letter-spacing:2px;text-transform:uppercase}
.bn-budget .bn-price{font-size:44px;line-height:1;font-weight:300;margin:0!important}
.bn-budget .bn-price span{display:block;margin-top:8px;font-size:18px}
.bn-budget .bn-budget-note{margin-top:auto!important;font-size:19px;line-height:1.45;font-weight:300}
.bn-on-light .wpb_text_column{color:#25282a}
.bn-on-dark .wpb_text_column,.bn-on-dark h3{color:#ffffff}
.bn-budget-bold .bn-price span,.bn-budget-bold .bn-budget-note{font-weight:700}

/* ---------- checklists ---------- */
.bn-checks{list-style:none;margin:0 0 34px;padding:0}
.bn-checks li{position:relative;padding:14px 0 14px 38px;border-top:1px solid #f16724;font-size:18px;font-weight:300;margin:0;break-inside:avoid}
.bn-checks li:last-child{border-bottom:1px solid #f16724}
.bn-checks li::before{content:"";position:absolute;left:4px;top:18px;width:8px;height:14px;border:solid #f16724;border-width:0 3px 3px 0;transform:rotate(45deg)}
.bn-checks-2{columns:2;column-gap:30px}
.bn-checks-2 li:last-child{border-bottom:0}
.bn-checks-wrap+.bn-lead{margin-top:0}

/* ---------- conference agenda timeline ---------- */
.bn-timeline .bn-time{display:flex;align-items:center;margin:0 0 18px!important}
.bn-timeline .bn-time span{background:#f16724;color:#ffffff;font-size:20px;font-weight:700;line-height:1;padding:12px 16px}
.bn-timeline .bn-time::after{content:"";flex:1;height:2px;background:#f16724}
.bn-timeline .bn-time-last::after{display:none}
.bn-timeline h4{font-size:23px;font-weight:700;color:#f16724;margin-bottom:6px}
.bn-timeline h5{font-size:18px;font-weight:600;margin-bottom:6px}
.bn-timeline p{font-size:16px;line-height:1.5;padding-right:24px}
.bnlp .vc_column-inner:has(>.wpb_wrapper>.bn-timeline){padding-left:0!important;padding-right:0!important}
/* columns have no side padding so the lines join up; put the 15px back on the row so the text lines up with the container */
.bnlp.vc_row:has(.bn-timeline){padding-left:15px!important;padding-right:15px!important}

/* ---------- partner block ---------- */
.bn-partner h3{font-size:28px;line-height:1.25;font-weight:600;text-transform:uppercase;color:#f16724;margin-bottom:10px}
.bn-partner p{font-size:18px;line-height:1.6;font-weight:300}
.bn-partner-row .wpb_column{align-self:center}

/* ---------- testimonials ---------- */
.bn-tq blockquote{position:relative;background:#f7f7f7;padding:30px;margin:0 0 30px;border:0;font-style:normal}
.bn-tq blockquote::after{content:"";position:absolute;left:40px;bottom:-14px;border-width:14px 14px 0 0;border-style:solid;border-color:#f7f7f7 transparent transparent transparent}
.bn-tq blockquote p{font-size:16px;line-height:1.6;font-style:normal}
.bn-pill img{height:56px!important;width:auto!important;border:1px solid #eeeeee;border-radius:30px;padding:2px;background:#ffffff}
.bn-cap{font-size:16px}
.bn-cap strong{font-weight:600}

/* ---------- FAQ toggles ---------- */
.bn-faq{border-top:1px solid #f16724;padding:20px 0;margin:0!important}
.bn-faq:last-child{border-bottom:1px solid #f16724}
.bn-faq .vc_toggle_title h4{font-size:18px;font-weight:600}

/* ---------- final CTA band ---------- */
.bn-cta{aspect-ratio:43/10;min-height:320px;display:flex!important;align-items:center}
.bn-cta .bn-cta-h h2{display:block;width:min(720px,100%);box-sizing:border-box;background:#f16724;color:#ffffff;padding:20px 14px;font-size:clamp(30px,3.4vw,40px);line-height:1.2;font-weight:400;text-transform:uppercase}
.bn-cta .bn-cta-link{margin-top:12px!important}
.bn-cta .bn-click{color:#ffffff;font-size:40px;font-weight:700;text-transform:uppercase;text-decoration:none}
.bn-cta .bn-click:hover{color:#2564af}

/* ---------- conference planning circle (the one Raw HTML block) ---------- */
.bnw{max-width:1200px;margin:0 auto;container-type:inline-size}
.bnw-desk{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden}
.bnw-desk svg{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}
.bnw-w{stroke:#ffffff;stroke-width:6;stroke-linejoin:round;cursor:pointer}
.bnw-desk text{font-family:Poppins,"Helvetica Neue",Arial,sans-serif;font-size:18px;font-weight:600;letter-spacing:.5px;fill:#ffffff}
.bnw-callout{position:absolute;left:0;top:3.33%;margin:0;background:#f16724;color:#ffffff;padding:1.83cqw 4.17cqw;font-size:3.33cqw;line-height:1.05;font-weight:300;text-transform:uppercase}
.bnw-callout strong{font-weight:700}
.bnw-t{position:absolute;width:14.67%;height:13.33%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5cqw;text-align:center;background:none;border:0;padding:0;margin:0;font-family:inherit;color:#25282a;cursor:pointer}
.bnw-t b{display:block;font-size:1.42cqw;font-weight:700;line-height:1.2;text-transform:uppercase}
.bnw-t span{display:block;font-size:1.17cqw;line-height:1.4}
.bnw-hub{position:absolute;left:40.83%;top:46%;width:18.33%;height:16.33%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.83cqw;text-align:center;pointer-events:none}
.bnw-hub img{width:7.67cqw;height:auto;display:block}
.bnw-hub p{margin:0;font-size:1.25cqw;font-weight:600;line-height:1.3;color:#25282a}
.bnw-p{position:absolute;left:66.67%;top:3.33%;width:30%;display:flex;flex-direction:column;gap:1cqw;align-items:flex-start}
.bnw-p h3{margin:0;font-size:1.83cqw;font-weight:700;line-height:1.2;text-transform:uppercase;color:#f16724}
.bnw-p p{margin:0;font-size:1.25cqw;line-height:1.5}
.bnw-btn{display:inline-block;background:#f16724;color:#ffffff;font-size:1.25cqw;text-transform:uppercase;text-decoration:none;padding:.6cqw 1.6cqw}
.bnw-btn:hover{background:#2864ae;color:#ffffff}
.bnw-chips{position:absolute;left:76%;top:82%;display:flex;flex-direction:column;gap:.5cqw;align-items:flex-start}
.bnw-chips-t{font-size:1.08cqw;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin:0 0 .2cqw}
.bnw-chip{border:1px solid #f16724;padding:.42cqw 1cqw;font-size:1.08cqw;font-weight:600;text-transform:uppercase}
.bnw-mob{display:none}
@container (max-width:899px){
.bnw-desk{display:none}
.bnw-mob{display:flex;flex-direction:column;gap:8px}
.bnw-mob .bnw-callout{position:static;font-size:28px;padding:16px 24px;align-self:flex-start}
.bnw-mhub{display:flex;align-items:center;gap:16px;padding:16px 0}
.bnw-mhub img{width:72px;height:auto}
.bnw-mhub p{margin:0;font-size:18px;font-weight:600;line-height:1.3}
.bnw-m{padding:24px;display:flex;flex-direction:column;gap:8px}
.bnw-m h3{margin:0;font-size:22px;font-weight:700;line-height:1.2;text-transform:uppercase;color:#25282a}
.bnw-m p{margin:0;font-size:16px;line-height:1.5;color:#25282a}
.bnw-msteps{background:#2564af;color:#ffffff;padding:24px;margin:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.bnw-msteps li{font-size:18px;font-weight:600;line-height:1.3}
}

/* ---------- mobile ---------- */
@media (max-width:767px){
.bn-hero.vc_row{padding-top:28px!important;padding-bottom:36px!important}
.bn-hero .bn-hl-head{font-size:34px;margin-bottom:20px}
.bn-hero .bn-hero-panel{padding:24px!important}
.bn-hero .bn-hero-panel h1{font-size:22px;letter-spacing:1px}
.bn-hero .bn-hero-left{margin-bottom:24px}
.bn-bar{padding-left:20px;width:calc(100% - 20px)}
.bn-card-border .vc_column-inner{border-right:0!important;border-bottom:1px solid #f16724!important;padding-bottom:30px!important;margin-bottom:30px}
.bn-blue .vc_column-inner,.bn-blue.bn-blue-left .vc_column-inner{padding:32px 20px!important}
.bn-has-mark .vc_column-inner{padding:80px 20px 36px!important}
.bn-mark{left:20px;top:-55px;width:110px}
.bn-mark img{width:110px;height:110px}
.bn-blue-big h2{font-size:30px}
.bn-split .bn-slab .vc_column-inner{min-height:300px}
.bn-checks-2{columns:1}
.bn-checks-2 li:last-child{border-bottom:1px solid #f16724}
.bn-partner-row .vc_btn3-container{text-align:left!important}
.bn-cta{aspect-ratio:auto;min-height:300px;background-position:left center!important}
.bn-cta .bn-cta-h h2{font-size:26px}
.bn-cta .bn-click{font-size:32px}
.bn-circle-row .vc_column-inner{padding-left:20px!important;padding-right:20px!important}
.bn-timeline p{padding-right:0}
/* blue panel icon rows: the panel padding above also hits these inner columns, so reset it and keep the icon beside its text */
.bn-blue-row .vc_column-inner{padding:0!important}
.bn-blue-row{display:flex;align-items:flex-start;gap:16px;margin-left:0!important;margin-right:0!important}
.bn-blue-row::before,.bn-blue-row::after{display:none}
.bn-blue-row>.wpb_column{flex:1 1 0;min-width:0;width:auto}
.bn-blue-row>.wpb_column:first-child{flex:0 0 auto}
}

/* ---------- tablet ---------- */
/* the 5/12 form column is too narrow for the fields and reCAPTCHA here, so stack the hero like on mobile */
@media (min-width:768px) and (max-width:1023px){
.bn-hero>.wpb_column{width:100%}
.bn-hero .bn-hero-left{margin-bottom:24px}
}
