/* HaulageBid premium membership page — isolated from shared page styling */
.hb-membership-page{background:#f1f5f7;color:#101820;padding:clamp(40px,6vw,82px) 20px 92px;font-family:Arial,Helvetica,sans-serif;min-height:65vh}
.hb-membership-page *{box-sizing:border-box}
.hb-membership-wrap{max-width:1120px;margin:0 auto}
.hb-membership-heading{text-align:center;max-width:770px;margin:0 auto 34px}
.hb-membership-kicker{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:800;letter-spacing:.22em;color:#b94b00;margin-bottom:15px}
.hb-membership-dot{width:8px;height:8px;background:#ff791c;border-radius:50%;box-shadow:0 0 0 5px #ff791c1c}
.hb-membership-heading h1{font-size:clamp(32px,4.3vw,54px);line-height:1.1;letter-spacing:-.045em;color:#061f2d;margin:0 0 16px;font-weight:800}
.hb-membership-subtitle{color:#303b43!important;font-size:16px;line-height:1.7;margin:0 auto;max-width:650px}
.hb-membership-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);border-radius:20px;overflow:hidden;box-shadow:0 24px 65px #071f3018;border:1px solid #d8e4eb;background:#fff}
.hb-membership-card{padding:clamp(26px,4vw,48px);background:#fff;min-width:0}
.hb-membership-card-head{display:flex;align-items:center;gap:15px;margin-bottom:30px}
.hb-membership-card-icon{height:48px;width:48px;border-radius:13px;background:#ff791c;color:#061f2d;display:grid;place-items:center;font-size:15px;font-weight:900;flex:none}
.hb-membership-small{font-size:10px;letter-spacing:.16em;color:#995019;font-weight:800}
.hb-membership-card h2{font-size:clamp(20px,2.2vw,25px);color:#061f2d;margin:5px 0 0;letter-spacing:-.025em}
.hb-membership-details{margin:0 0 26px;border:1px solid #e3eaf0;border-radius:13px;overflow:hidden}
.hb-membership-details>div{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;border-bottom:1px solid #e3eaf0}
.hb-membership-details>div:last-child{border-bottom:0}
.hb-membership-details dt{font-size:13px;color:#414c54;font-weight:700}
.hb-membership-details dd{margin:0;font-size:14px;color:#111;font-weight:750;text-align:right;overflow-wrap:anywhere}
.hb-membership-status{display:inline-block;padding:5px 10px;border-radius:100px;background:#fff1e6;color:#843d08;font-size:12px;font-weight:800;text-transform:capitalize}
.hb-membership-status.is-active{background:#dff6eb;color:#136443}
.hb-membership-intro{font-size:16px;line-height:1.7;color:#303b43!important;margin:0 0 28px}
.hb-membership-actions{display:flex;flex-direction:column;gap:11px}
.hb-membership-page .hb-membership-cta{display:flex;width:100%;min-height:52px;align-items:center;justify-content:center;gap:15px;border:1px solid #ff791c;border-radius:10px;background:#ff791c;color:#061f2d!important;font-size:15px;font-weight:800;text-align:center;text-decoration:none;cursor:pointer;padding:12px 18px;box-shadow:none;transform:none}
.hb-membership-page .hb-membership-cta:hover{background:#ff9447;border-color:#ff9447;text-decoration:none;transform:none}
.hb-membership-billing{margin:0;width:100%}
.hb-membership-page .hb-membership-outline{display:flex;align-items:center;justify-content:center;min-height:49px;padding:11px 15px;border:1px solid #bfd0dc;border-radius:10px;background:#fff;color:#092333!important;font-size:14px;font-weight:800;text-decoration:none}
.hb-membership-page .hb-membership-outline:hover{background:#f5f8fa;border-color:#839eaf}
.hb-membership-page .hb-membership-textlink{align-self:center;margin-top:8px;color:#33414a!important;font-size:14px;font-weight:700;text-decoration:none}
.hb-membership-page .hb-membership-textlink:hover{text-decoration:underline}
.hb-membership-aside{background:linear-gradient(155deg,#082839,#001e2b 72%);color:#fff;padding:clamp(30px,4vw,52px);display:flex;flex-direction:column;position:relative;overflow:hidden}
.hb-membership-aside:before{content:"";position:absolute;width:310px;height:310px;border:1px solid #ffffff1b;border-radius:50%;right:-190px;top:-160px;box-shadow:0 0 0 60px #ffffff08,0 0 0 120px #ffffff05;pointer-events:none}
.hb-membership-aside-label{position:relative;font-size:11px;font-weight:800;letter-spacing:.17em;color:#ffae75;margin:5px 0 22px}
.hb-membership-aside h2{position:relative;color:#fff!important;font-size:clamp(28px,3vw,39px);letter-spacing:-.04em;line-height:1.14;margin:0 0 19px}
.hb-membership-aside h2 span{color:#ff8c3b}
.hb-membership-aside>p{position:relative;color:#d8e5eb!important;font-size:15px;line-height:1.7;margin:0 0 28px}
.hb-membership-benefit{position:relative;display:flex;gap:13px;padding:16px 0;border-top:1px solid #ffffff24}
.hb-membership-benefit>span{flex:none;width:27px;height:27px;border-radius:50%;background:#ff791c;color:#061f2d;display:grid;place-items:center;font-weight:900;font-size:14px}
.hb-membership-benefit strong{display:block;color:#fff;font-size:14px;margin-bottom:5px}
.hb-membership-benefit small{display:block;color:#d5e3e9;font-size:12px;line-height:1.5}
.hb-membership-aside-bottom{position:relative;margin-top:auto;padding-top:25px;font-size:10px;letter-spacing:.12em;color:#b9cdd7;font-weight:700}
.hb-membership-aside-bottom span{color:#ff791c;padding:0 5px}
.hb-membership-alert{display:flex;align-items:center;gap:12px;margin:0 0 22px;padding:14px 18px;border-radius:10px;border:1px solid #f2c4ab;background:#fff4eb;color:#79350e;font-size:14px;font-weight:700}
.hb-membership-alert span{display:grid;place-items:center;width:23px;height:23px;flex:none;border-radius:50%;background:#ff791c;color:#071f30;font-weight:900}
.hb-membership-footer-note{text-align:center;margin:24px 0 0;font-size:12px;line-height:1.7;color:#475660!important}
.hb-membership-footer-note a{color:#a84300!important;text-decoration:underline}
@media(max-width:760px){.hb-membership-layout{grid-template-columns:1fr}.hb-membership-aside{padding:30px}.hb-membership-heading{margin-bottom:25px}.hb-membership-page{padding:35px 15px 60px}}
@media(max-width:420px){.hb-membership-card{padding:23px 19px}.hb-membership-details>div{align-items:flex-start;flex-direction:column;gap:5px}.hb-membership-details dd{text-align:left}.hb-membership-aside{padding:25px 20px}}
