/* BunkBeds.shop dual-audience introduction and independent builder program, v1.3.0. */
.nbh-dual-hero{min-height:625px;background:linear-gradient(90deg,rgba(9,27,24,.95) 0%,rgba(14,32,26,.83) 43%,rgba(14,32,26,.35) 100%),var(--nbh-hero-image) center 55%/cover no-repeat}
.nbh-dual-hero .nbh-hero-text{max-width:925px}
.nbh-dual-hero h1{font-size:clamp(2.85rem,5.7vw,5.85rem)}
.nbh-dual-hero .nbh-btn-row{align-items:center}
.nbh-visitor-gateway{background:#f6f4ef;padding:35px 0 30px}
.nbh-gateway-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.nbh-gateway-card{display:grid;grid-template-columns:56px 1fr;gap:19px;align-items:start;padding:clamp(23px,3vw,41px);border-radius:15px;min-width:0;border:1px solid #dfdfd5;box-shadow:0 10px 28px #112e2310}
.nbh-gateway-build{background:#163e32;color:#fff;border-color:#245040}
.nbh-gateway-buy{background:#fff;color:#223c30}
.nbh-gateway-icon{width:53px;height:53px;display:grid;place-items:center;border-radius:12px;background:#d9ad6a;color:#183a2d;font-weight:900;font-size:19px;font-variant-numeric:tabular-nums}
.nbh-gateway-buy .nbh-gateway-icon{background:#e9e2d4;color:#234b3f}
.nbh-gateway-tag{font-size:10px!important;font-weight:900!important;letter-spacing:.18em!important;color:#cfa46d!important;margin:0 0 13px!important}
.nbh-gateway-buy .nbh-gateway-tag{color:#8e632e!important}
.nbh-gateway-card h2{font-family:Georgia,serif;font-size:clamp(1.85rem,2.7vw,2.8rem);line-height:1.15;margin:0 0 12px;color:inherit!important}
.nbh-gateway-card p:not(.nbh-gateway-tag){font-size:15px;line-height:1.7;margin:0 0 22px;color:inherit!important;opacity:.88}
.nbh-gateway-link{font-size:14px;font-weight:850;text-decoration:none!important;display:inline-flex;gap:10px;align-items:center;color:#ecc38e!important;min-height:44px}
.nbh-gateway-buy .nbh-gateway-link{color:#1c644e!important}
.nbh-gateway-link:hover,.nbh-gateway-link:focus-visible{text-decoration:underline!important;text-underline-offset:4px}
.nbh-builder-section{background:#e9eddf;padding:clamp(70px,7vw,106px) 0}
.nbh-builder-layout{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:clamp(24px,5.2vw,80px);align-items:center}
.nbh-builder-narrative h2,.nbh-builder-page h2,.nbh-builder-apply h2{font:normal 700 clamp(2.15rem,3.8vw,4.1rem)/1.13 Georgia,serif;letter-spacing:-.025em;color:#173b2d;margin:0 0 22px}
.nbh-builder-narrative>p:not(.nbh-eyebrow):not(.nbh-builder-disclaimer){font-size:16px;line-height:1.82;color:#40594d;max-width:700px}
.nbh-builder-bullets{margin-top:30px;display:grid;gap:16px}
.nbh-builder-bullets>div{display:grid;grid-template-columns:43px 1fr;gap:13px;align-items:start;border-top:1px solid #c6d1c5;padding-top:14px}
.nbh-builder-bullets>div>span{color:#886230;font-weight:850;font-size:13px;padding-top:5px}
.nbh-builder-bullets p{margin:0;font-size:15px;line-height:1.6;color:#42594d}
.nbh-builder-bullets strong{color:#153c2e}
.nbh-builder-section .nbh-btn-row{align-items:center;gap:17px;margin-top:29px}
.nbh-builder-section .nbh-text-link,.nbh-region-cta .nbh-text-link{font-size:14px;color:#1f5a44!important;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.nbh-builder-disclaimer{font-size:12px!important;line-height:1.7!important;color:#53665a!important;margin-top:17px}
.nbh-builder-visual{background:#173e33;border-radius:17px;overflow:hidden;box-shadow:0 22px 40px #15382e2a}
.nbh-builder-photo{height:400px;min-height:250px;overflow:hidden}
.nbh-builder-photo img{width:100%;height:100%;object-fit:cover;display:block}
.nbh-builder-visual-caption{padding:29px 30px 33px;color:white;display:grid;gap:7px}
.nbh-builder-visual-caption strong{font:700 clamp(1.35rem,2.2vw,2.1rem)/1.2 Georgia,serif;color:#fff}
.nbh-builder-visual-caption span{color:#d6e5d8;font-size:14px}
.nbh-region-cta{display:flex;gap:22px;align-items:center;flex-wrap:wrap;margin-top:25px}
.nbh-region-spotlight .nbh-section-heading{margin-bottom:25px}
/* Builder program landing page */
.nbh-builder-page-hero{background:linear-gradient(110deg,rgba(12,34,30,.96),rgba(27,64,54,.89)),url('../images/bunks/gallery-rustic-platform.webp') center/cover;padding:clamp(75px,9vw,130px) 0;color:#fff}
.nbh-builder-page-hero-inner{max-width:min(1240px,calc(100% - 48px));margin:auto}
.nbh-builder-page-hero h1{font:700 clamp(3rem,6vw,6.2rem)/1.04 Georgia,serif;color:#fff;margin:0 0 24px;max-width:880px}
.nbh-builder-page-hero p:not(.nbh-eyebrow){font-size:clamp(17px,2vw,21px);line-height:1.65;color:#e6ece7;max-width:740px}
.nbh-builder-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.nbh-builder-feature-grid article{background:white;padding:clamp(19px,2.3vw,30px);border:1px solid #e4dfd4;border-radius:12px}
.nbh-builder-feature-grid article>span{font-size:11px;color:#9d7546;font-weight:900;letter-spacing:.12em}
.nbh-builder-feature-grid h3{font:700 1.55rem/1.22 Georgia,serif;color:#1d4637;margin:17px 0 10px}
.nbh-builder-feature-grid p{font-size:14px;line-height:1.7;color:#55665b;margin:0}
.nbh-builder-how{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px)}
.nbh-builder-how p:not(.nbh-eyebrow){line-height:1.8;color:#465c4f}
.nbh-builder-how ol{counter-reset:step;list-style:none;margin:0;padding:0;display:grid;gap:15px}
.nbh-builder-how li{background:#fff;padding:23px 25px;border:1px solid #dfd9cc;border-radius:13px;display:grid;gap:8px}
.nbh-builder-how li strong{font-size:18px;color:#153b2d}
.nbh-builder-how li span{font-size:14px;color:#52665b;line-height:1.6}
.nbh-builder-apply{background:#dfe7df;scroll-margin-top:35px}
.nbh-builder-apply-inner{display:grid;grid-template-columns:.7fr 1fr;align-items:start;gap:clamp(28px,6vw,85px)}
.nbh-builder-apply-inner>div>p:not(.nbh-eyebrow){font-size:16px;line-height:1.8;color:#42594d}
.nbh-builder-form-wrap,.nbh-builder-quick-apply{background:#fff;padding:clamp(20px,3vw,40px);border-radius:15px;box-shadow:0 15px 35px #1c3d2d18;color:#1b3c30}
.nbh-builder-quick-apply{margin-top:38px;max-width:900px}
.nbh-builder-quick-apply h3{font:700 1.75rem/1.2 Georgia,serif;color:#143b2e;margin:0 0 14px}
.nbh-builder-form-shell .nbh-builder-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.nbh-builder-form-shell label{font-size:13px;font-weight:800;color:#1c4032;display:flex;flex-direction:column;gap:7px;min-width:0}
.nbh-builder-form-shell .nbh-wide{grid-column:1/-1}
.nbh-builder-form-shell input:not([type='checkbox']),.nbh-builder-form-shell select,.nbh-builder-form-shell textarea{width:100%;box-sizing:border-box;min-height:46px;border-radius:7px;border:1px solid #b9cbbf;background:#fff;color:#20352c;font:inherit;font-size:15px;padding:10px 12px}
.nbh-builder-form-shell textarea{resize:vertical;min-height:110px}
.nbh-builder-form-shell input:focus-visible,.nbh-builder-form-shell select:focus-visible,.nbh-builder-form-shell textarea:focus-visible{outline:3px solid #669788;outline-offset:2px}
.nbh-builder-form-shell .nbh-builder-ack{display:flex;flex-direction:row;align-items:flex-start;gap:11px;line-height:1.6;font-size:12px;font-weight:600}
.nbh-builder-ack input{flex:none;width:18px;height:18px;margin-top:2px}
.nbh-builder-form-shell button{margin-top:20px}
.nbh-builder-form-shell .nbh-honeypot{position:absolute!important;left:-9999px!important;height:1px;overflow:hidden}
.nbh-builder-form-shell .nbh-privacy-note{font-size:11px;line-height:1.55;color:#607064;margin:15px 0 0}
.nbh-builder-form-shell .nbh-form-message{background:#f2f8ed;border-left:4px solid #458369;padding:12px 15px;margin:0 0 18px;color:#164b32}
.nbh-builder-form-shell [role='alert']{border-left-color:#9d4e29;background:#fff2e9;color:#66311a}
.nbh-map-builder-banner{margin:32px auto 0;padding:22px 26px;border-radius:13px;background:#173e32;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px}
.nbh-map-builder-banner div{display:grid;gap:5px}.nbh-map-builder-banner strong{font-size:17px;color:#fff}.nbh-map-builder-banner span{font-size:13px;line-height:1.5;color:#d5e5d8}
.nbh-map-builder-banner>a{font-size:14px;font-weight:800;color:#ffdca2!important;text-decoration:underline;white-space:nowrap;text-underline-offset:3px}
@media(max-width:980px){.nbh-builder-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nbh-builder-layout{grid-template-columns:1fr}.nbh-builder-visual{max-width:660px}.nbh-builder-apply-inner{grid-template-columns:1fr}.nbh-map-builder-banner{align-items:flex-start}}
@media(max-width:760px){.nbh-gateway-grid,.nbh-builder-how{grid-template-columns:1fr}.nbh-dual-hero{min-height:510px}.nbh-dual-hero .nbh-hero-inner{padding:58px 0 70px}.nbh-gateway-card{grid-template-columns:44px 1fr;gap:13px}.nbh-gateway-icon{width:43px;height:43px;font-size:16px}.nbh-builder-photo{height:290px}.nbh-map-builder-banner{flex-direction:column;gap:12px}.nbh-map-builder-banner>a{white-space:normal}}
@media(max-width:520px){.nbh-builder-feature-grid,.nbh-builder-form-shell .nbh-builder-inputs{grid-template-columns:1fr}.nbh-dual-hero h1{font-size:clamp(2.45rem,10vw,3.65rem)}.nbh-dual-hero .nbh-btn-row a{width:100%}.nbh-builder-section{padding:55px 0}.nbh-builder-visual-caption{padding:20px}.nbh-builder-form-wrap{padding:22px 16px}.nbh-gateway-card{padding:23px 19px}.nbh-builder-page-hero{padding:72px 0}.nbh-builder-page-hero h1{font-size:2.7rem}}
@media(prefers-reduced-motion:reduce){.nbh-gateway-card,.nbh-gateway-link{transition:none}}

.nbh-about-hub{background:#f8f7f1;padding:clamp(55px,6vw,85px) 0}
.nbh-about-hub-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(20px,5vw,75px)}
.nbh-about-hub h2{font:700 clamp(2rem,3.2vw,3.5rem)/1.15 Georgia,serif;color:#173b2d;margin:0}
.nbh-about-hub-inner>p{font-size:17px;line-height:1.78;color:#4c6456;margin:0}
@media(max-width:760px){.nbh-about-hub-inner{grid-template-columns:1fr}}
/* Full-bleed layout for the dedicated /builder-program/ Page template. */
.wp-site-blocks>.nbh-builder-page-main,.nbh-builder-page-main>.wp-block-post-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.nbh-builder-page-main .wp-block-post-content>.wp-block-shortcode{max-width:none!important;margin:0!important}
.nbh-builder-page-main .nbh-builder-page{width:100%;max-width:none}

/* 1.3.3: preserve both grid tracks even when imported WP block defaults override
   paragraph sizing or automatic placement. Keep numbering and copy in one row. */
body.nbh-theme .nbh-builder-bullets > div {
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  grid-auto-flow:row;
  align-items:start;
  column-gap:14px;
  width:100%;
  min-width:0;
}
body.nbh-theme .nbh-builder-bullets > div > span {
  grid-column:1!important;
  grid-row:1!important;
  width:auto!important;
  min-width:0;
}
body.nbh-theme .nbh-builder-bullets > div > p {
  grid-column:2!important;
  grid-row:1!important;
  margin:0!important;
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:break-word;
  line-height:1.65!important;
}
body.nbh-theme #nbh-builder-program,
body.nbh-theme #nbh-builder-apply { scroll-margin-top:110px; }
