/* ==============================
BORELINK CORE STYLES
============================== */

/* ==============================
RESET
============================== */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

:root{
  --borelink-ad-zone-height:0px;
}

/* WordPress admin bar overlaps fixed elements at top:0 */
body.admin-bar .borelink-ad-zone{
  top:32px;
}
@media screen and (max-width:782px){
  body.admin-bar .borelink-ad-zone{
    top:46px;
  }
}

body{
font-family:Arial, Helvetica, sans-serif;
background:#F4F6F8;
color:#1A1A1A;
line-height:1.5;
/* Only the ad strip reserves layout space; the header floats over page content (no jump when it shows/hides). */
padding-top:var(--borelink-ad-zone-height,0px);
}

/* ==============================
LINKS
============================== */

a{
text-decoration:none;
color:inherit;
}

/* ==============================
COLOR VARIABLES
============================== */

:root{

--steel-blue:#2F5D7C;
--steel-blue-hover:#264e6a;

--safety-orange:#F7931E;
--safety-orange-hover:#d98118;

--concrete-gray:#F4F6F8;
--carbon-black:#1A1A1A;
--light-gray:#E5E7EB;
--white:#FFFFFF;

--ui-background:#F4F6F8;

}

/* ==============================
LAYOUT
============================== */

.borelink-container{
max-width:none;
width:100%;
margin:0;
box-sizing:border-box;
/* 5px gutters; use full viewport width (no 1400px inset) */
padding:10px 5px 20px;
}

/* ==============================
HEADER (Dynamic Auto-Hide)
============================== */

.borelink-header{
    /* Solid white matches the logo asset (opaque PNG); translucent + blur showed gray from content behind. */
    background: #ffffff;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);

    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1002;
    /* Curtain: docked to top of screen, overlapping the ad banner */
    transform: translateY(-100%);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.borelink-header.active{
    transform: translateY(0);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.1);
}

/* Below WordPress toolbar; still overlays the ad strip */
body.admin-bar .borelink-header{
    top: 32px;
}
body.admin-bar .borelink-header.active{
    transform: translateY(0);
}
@media screen and (max-width:782px){
  body.admin-bar .borelink-header{
    top: 46px;
  }
}

/* Header bar: use full width up to a wide max so nav links stay on one row */
.borelink-nav{
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    max-width:min(1680px, 100%);
    margin:0 auto;
    padding:14px clamp(12px, 3.5vw, 40px);
    gap:clamp(16px, 2vw, 28px);
    flex-wrap:nowrap;
    box-sizing:border-box;
}

.borelink-nav-start{
    display:flex;
    align-items:center;
    gap:12px;
    flex-shrink:0;
    position:relative;
    z-index:2;
    background:var(--white,#fff);
}

.borelink-nav-ai{
    display:flex;
    align-items:stretch;
    border:1px solid #ddd;
    border-radius:8px;
    overflow:hidden;
    background:#fff;
    max-width:min(200px,22vw);
}

.borelink-nav-ai__input{
    border:none;
    padding:6px 8px;
    font-size:13px;
    min-width:0;
    width:100%;
    box-sizing:border-box;
}

.borelink-nav-ai__input:focus{
    outline:none;
}

.borelink-nav-ai__btn{
    border:none;
    background:var(--safety-orange,#F7931E);
    color:#fff;
    padding:0 10px;
    font-weight:700;
    cursor:pointer;
    flex-shrink:0;
}

.borelink-nav-ai__btn:hover{
    background:var(--safety-orange-hover,#d98118);
}

@media (max-width:640px){
    .borelink-nav-ai{
        max-width:120px;
    }
    .borelink-nav-ai__input{
        font-size:12px;
        padding:5px 6px;
    }
}
/* ==============================
LOGO
============================== */

.borelink-logo{
display:flex;
align-items:center;
flex-shrink:0;
}

.borelink-logo a{
display:flex;
align-items:center;
gap:10px;
}

.borelink-logo img{
max-height:45px;
width:auto;
display:block;
}

/* ==============================
FOOTER ADS DOCK (mirrors header curtain + always-visible peek strip)
============================== */

.borelink-ads-dock-root{
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    z-index:1000;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    pointer-events:none;
}

/* Thin strip always visible so users can find the dock (sheet hides above fold) */
.borelink-ads-dock__peek{
    order:2;
    height:12px;
    flex-shrink:0;
    pointer-events:auto;
    cursor:pointer;
    background:linear-gradient(to top, rgba(0,0,0,0.07), rgba(0,0,0,0.02));
    border-top:1px solid rgba(0,0,0,0.1);
    box-sizing:border-box;
}

.borelink-ads-dock-root.active .borelink-ads-dock__peek{
    height:0;
    min-height:0;
    border:none;
    pointer-events:none;
    overflow:hidden;
    opacity:0;
}

.borelink-ads-dock__sheet{
    order:1;
    transform:translateY(100%);
    transition:transform 0.4s cubic-bezier(0.4,0,0.2,1);
    pointer-events:none;
    background:#f0f0f0;
    border-top:1px solid rgba(0,0,0,0.08);
    box-shadow:0 -4px 24px rgba(0,0,0,0.08);
}

.borelink-ads-dock-root.active .borelink-ads-dock__sheet{
    transform:translateY(0);
    pointer-events:auto;
}

.borelink-ads-dock__inner{
    max-width:1200px;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    align-items:stretch;
}

.borelink-ads-dock__panel{
    padding:12px 12px 8px;
    text-align:center;
    min-height:90px;
    box-sizing:border-box;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
}

.borelink-ads-dock__panel:empty{
    min-height:0;
    padding:0;
}

.borelink-ads-dock__placeholder{
    margin:0;
    padding:8px 12px;
    font-size:13px;
    line-height:1.45;
    color:#555;
    text-align:left;
    max-width:36rem;
    margin-left:auto;
    margin-right:auto;
}

.borelink-ads-dock__chrome{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    height:36px;
    flex-shrink:0;
    background:#ffffff;
    border-top:1px solid rgba(0,0,0,0.06);
    font-size:10px;
    font-weight:600;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:#888;
    user-select:none;
}

.borelink-ads-dock__chrome-line{
    width:28px;
    height:3px;
    border-radius:2px;
    background:rgba(0,0,0,0.1);
}

@media (max-width:767px){
    .borelink-ads-dock__peek{
        display:none;
    }
}

/* Reserve space when dock is open so page footer / content stay above it */
body.has-borelink-ads-dock.borelink-ads-dock-open{
    padding-bottom:min(42vh,300px);
    transition:padding-bottom 0.35s ease;
}

@media (max-width:767px){
    body.has-borelink-ads-dock{
        padding-bottom:min(42vh,300px);
    }
}

@media (prefers-reduced-motion:reduce){
    .borelink-ads-dock__sheet{
        transition:none;
    }
    body.has-borelink-ads-dock.borelink-ads-dock-open{
        transition:none;
    }
}

/* ==============================
MENU — main nav: icon-only top level (inline SVG + screen-reader-text)
============================== */

.borelink-menu{
display:flex;
align-items:center;
flex:1 1 auto;
min-width:0;
justify-content:flex-start;
padding-left:2px;
overflow-x:auto;
overflow-y:hidden;
-webkit-overflow-scrolling:touch;
scrollbar-width:none;
}

.borelink-menu::-webkit-scrollbar{
display:none;
}

.borelink-menu-list{
display:flex;
flex-wrap:nowrap;
gap:2px;
list-style:none;
align-items:center;
margin:0;
padding:0;
}

.borelink-menu-list > li{
position:relative;
flex-shrink:0;
}

/* Visually hidden labels (match WP core pattern; scoped to main menu) */
.borelink-menu .screen-reader-text{
border:0;
clip:rect(1px,1px,1px,1px);
clip-path:inset(50%);
height:1px;
margin:-1px;
overflow:hidden;
padding:0;
position:absolute !important;
width:1px;
word-wrap:normal !important;
}

/* Square circular hit target (~40px); icon centered; no visible text */
.borelink-menu .borelink-menu-list > li > a.borelink-menu__link,
.borelink-menu .borelink-menu-list > li a.borelink-menu__link{
position:relative;
display:inline-flex;
align-items:center;
justify-content:center;
width:40px;
height:40px;
min-width:40px;
min-height:40px;
border-radius:50%;
text-decoration:none;
color:#606060;
transition:background-color 0.12s ease, color 0.12s ease;
box-sizing:border-box;
overflow:hidden;
}

.borelink-menu .borelink-menu-icon{
display:flex;
align-items:center;
justify-content:center;
width:24px;
height:24px;
flex-shrink:0;
pointer-events:none;
}

.borelink-menu .borelink-menu-icon svg{
display:block;
width:100%;
height:100%;
}

@media (max-width:480px){
.borelink-menu .borelink-menu-list > li > a.borelink-menu__link,
.borelink-menu .borelink-menu-list > li a.borelink-menu__link{
width:44px;
height:44px;
min-width:44px;
min-height:44px;
}
}

.borelink-menu .borelink-menu-list > li > a.borelink-menu__link:hover,
.borelink-menu .borelink-menu-list > li > a.borelink-menu__link:focus-visible,
.borelink-menu .borelink-menu-list > li a.borelink-menu__link:hover,
.borelink-menu .borelink-menu-list > li a.borelink-menu__link:focus-visible{
background:rgba(0,0,0,0.05);
color:#0f0f0f;
outline:none;
}

.borelink-menu .borelink-menu-list > li.current-menu-item > a.borelink-menu__link,
.borelink-menu .borelink-menu-list > li.current-menu-ancestor > a.borelink-menu__link,
.borelink-menu .borelink-menu-list > li.current-menu-item a.borelink-menu__link,
.borelink-menu .borelink-menu-list > li.current-menu-ancestor a.borelink-menu__link{
background:rgba(0,0,0,0.09);
color:#0f0f0f;
}

/* Fallback: plain top-level links only if markup bypasses icon layer */
.borelink-menu .borelink-menu-list > li > a:not(.borelink-menu__link){
color:#606060;
font-weight:500;
font-size:14px;
transition:color 0.12s ease;
}

.borelink-menu .borelink-menu-list > li > a:not(.borelink-menu__link):hover{
color:#0f0f0f;
}

@media (min-width:901px){
.borelink-menu .borelink-menu-list > li > a:not(.borelink-menu__link){
white-space:nowrap;
}
}

/* ==============================
NAV RIGHT (user + admin-only menu)
============================== */

.borelink-nav-right{
display:flex;
align-items:center;
gap:14px;
flex-shrink:0;
margin-left:auto;
}

.borelink-lang-switch{
display:flex;
align-items:center;
gap:2px;
font-size:13px;
font-weight:600;
}

.borelink-lang-switch__opt{
color:#606060;
text-decoration:none;
padding:4px 8px;
border-radius:4px;
line-height:1.2;
transition:color 0.12s ease, background 0.12s ease;
}

.borelink-lang-switch__opt:hover,
.borelink-lang-switch__opt:focus{
color:#0f0f0f;
outline:none;
}

.borelink-lang-switch__opt.is-active{
color:var(--steel-blue,#2F5D7C);
background:rgba(47,93,124,0.1);
}

.borelink-lang-switch__sep{
color:#bbb;
user-select:none;
padding:0 1px;
}

/* ==============================
USER ACTIONS
============================== */

.borelink-user-actions{
display:flex;
align-items:center;
gap:12px;
}

/* ==============================
PORTAL ADMIN MENU (administrators only)
============================== */

.borelink-admin-nav{
border-left:1px solid #e5e5e5;
padding-left:14px;
}

.borelink-admin-menu-list{
display:flex;
align-items:center;
gap:12px;
list-style:none;
margin:0;
padding:0;
flex-wrap:wrap;
justify-content:flex-end;
}

.borelink-admin-menu-list li a{
font-size:13px;
font-weight:600;
color:var(--steel-blue,#2F5D7C);
white-space:nowrap;
transition:color 0.2s;
}

.borelink-admin-menu-list li a:hover,
.borelink-admin-menu-list li a:focus{
color:var(--safety-orange,#F7931E);
outline:none;
}

/* MAIN CTA BUTTON */

.borelink-btn{
background:var(--safety-orange);
color:white;
padding:10px 18px;
border-radius:6px;
font-weight:600;
font-size:14px;
transition:0.2s;
}

.borelink-btn:hover{
background:var(--safety-orange-hover);
}

/* ==============================
HERO
============================== */

.borelink-hero{
text-align:center;
/* Half of previous 60px top; horizontal from .borelink-container gutters */
padding:30px 0 30px;
}

.borelink-hero h1{
font-size:32px;
margin-bottom:10px;
}

.borelink-hero p{
color:#666;
}

/* ==============================
HOMEPAGE SECTIONS
============================== */

.borelink-sections{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:20px;
margin:40px 0;
}

.borelink-section-card{
background:white;
padding:20px;
border-radius:10px;
box-shadow:0 2px 8px rgba(0,0,0,0.05);
text-align:center;
transition:0.3s;
}

.borelink-section-card:hover{
transform:translateY(-5px);
box-shadow:0 6px 18px rgba(0,0,0,0.1);
}

.borelink-section-card h3{
margin-bottom:10px;
color:var(--steel-blue);
}

.borelink-section-card p{
font-size:14px;
color:#666;
margin-bottom:15px;
}

.borelink-section-card a{
background:var(--safety-orange);
color:white;
padding:8px 14px;
border-radius:6px;
display:inline-block;
font-size:14px;
}

.borelink-section-card a:hover{
background:var(--safety-orange-hover);
}

/* ==============================
FEATURED SECTIONS
============================== */

.borelink-featured{
margin-top:50px;
}

.borelink-featured h2{
margin-bottom:20px;
color:var(--steel-blue);
}

/* Home: Prime-style row focus + carousel cards */
.borelink-home-pv{
margin:32px 0 48px;
}
.borelink-home-pv .borelink-pv-row{
min-height:132px;
padding:10px 0 16px;
transition:min-height 0.4s ease, padding 0.4s ease;
}
.borelink-home-pv .borelink-pv-row.is-pv-focus{
min-height:268px;
padding-top:16px;
padding-bottom:20px;
}
.borelink-home-pv .borelink-pv-row.is-pv-focus .news-card{
min-width:300px;
}
.borelink-home-pv .borelink-pv-row:not(.is-pv-focus) .news-card{
min-width:252px;
}
.borelink-pv-card{
position:relative;
display:flex;
flex-direction:column;
}
.borelink-pv-card__link{
display:flex;
flex-direction:column;
height:100%;
text-decoration:none;
color:inherit;
}
.borelink-pv-card__media{
line-height:0;
overflow:hidden;
border-radius:8px 8px 0 0;
max-height:140px;
}
.borelink-home-pv .borelink-pv-row.is-pv-focus .borelink-pv-card__media{
max-height:180px;
}
.borelink-pv-card__thumb,
.borelink-pv-card__avatar{
width:100%;
height:auto;
object-fit:cover;
display:block;
}
.borelink-pv-card__avatar{
max-height:120px;
width:auto;
max-width:100%;
margin:8px auto 0;
border-radius:50%;
}
.borelink-pv-card__compact{
padding:12px 14px;
flex:1;
}
.borelink-pv-card__title{
font-size:16px;
margin:0 0 6px;
color:var(--steel-blue);
}
.borelink-pv-card__summary{
font-size:13px;
color:#555;
margin:0 0 8px;
line-height:1.45;
}
.borelink-pv-card__price{
font-weight:700;
color:var(--steel-blue);
font-size:14px;
}
.borelink-pv-card__extra{
margin-top:8px;
font-size:12px;
}
.borelink-pv-card__hover{
max-height:0;
opacity:0;
overflow:hidden;
padding:0 14px;
transition:max-height 0.35s ease, opacity 0.3s ease, padding 0.3s ease;
background:linear-gradient(180deg, rgba(255,255,255,0.96) 0%, #fff 45%);
border-top:1px solid #eee;
}
.borelink-pv-card:hover .borelink-pv-card__hover,
.borelink-pv-card:focus-within .borelink-pv-card__hover{
max-height:240px;
opacity:1;
padding:10px 14px 12px;
}
.borelink-pv-card__detail{
font-size:13px;
line-height:1.45;
margin:0 0 8px;
color:#333;
}
body:not(.logged-in) .borelink-pv-card__detail--member{
display:none;
}
body.logged-in .borelink-pv-card__detail--guest{
display:none;
}
.borelink-pv-card__more{
font-size:12px;
font-weight:600;
color:var(--safety-orange);
}
.borelink-home-pv .borelink-pv-card:hover{
transform:scale(1.05);
z-index:4;
box-shadow:0 12px 28px rgba(0,0,0,0.12);
}
.borelink-home-pv .borelink-pv-card{
transition:transform 0.3s ease, box-shadow 0.3s ease;
}

/* ==============================
MARKETPLACE SEARCH
============================== */

.borelink-search{
display:flex;
gap:10px;
margin:20px 0 30px;
flex-wrap:wrap;
}

.borelink-search input,
.borelink-search select{
padding:12px;
border-radius:6px;
border:1px solid #ddd;
}

.borelink-search input{
flex:1;
min-width:200px;
}

.borelink-search button{
background:var(--safety-orange);
color:white;
border:none;
padding:12px 20px;
border-radius:6px;
cursor:pointer;
}

.borelink-search button:hover{
background:var(--safety-orange-hover);
}

/* ==============================
GRID SYSTEM
============================== */

.borelink-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:20px;
}

/* ==============================
EQUIPMENT CARD
============================== */

.equipment-card{
background:white;
border-radius:8px;
padding:15px;
box-shadow:0 2px 8px rgba(0,0,0,0.05);
display:flex;
flex-direction:column;
gap:10px;
transition:all .2s ease;
}

.equipment-card:hover{
transform:translateY(-3px);
box-shadow:0 6px 16px rgba(0,0,0,0.08);
}

.equipment-card img{
width:100%;
border-radius:6px;
}

.equipment-title{
font-weight:600;
font-size:16px;
}

.equipment-location{
font-size:14px;
color:#666;
}

.equipment-price{
font-weight:700;
color:var(--steel-blue);
}

/* ==============================
BADGES
============================== */

.borelink-badge{
display:inline-block;
padding:4px 8px;
border-radius:5px;
font-size:12px;
font-weight:600;
margin-right:6px;
margin-bottom:4px;
}

.email-verified{background:#7f8c8d;color:#fff;}
.phone-verified{background:#3498db;color:#fff;}
.phone-verified.is-warning{background:#e67e22;color:#fff;}
.human-verified{background:#16a085;color:#fff;}
.payment-verified,
.membership-verified{background:#2ecc71;color:#fff;}
.business-verified{background:#8e44ad;color:#fff;}
.top-vendor{background:#f39c12;color:#fff;}
.borelink-badge.promoted{background:#f39c12;color:#fff;}
.borelink-badge.emergency{background:#c0392b;color:#fff;}

.borelink-listing-card .borelink-listing-card__link{
display:block;
text-decoration:none;
color:inherit;
}
.borelink-listing-card .borelink-listing-card__badges{
margin-top:8px;
}

.borelink-member-since{
display:block;
font-size:13px;
color:#666;
margin-top:4px;
}

.borelink-vendor-badges{
margin-top:6px;
}

/* ==============================
RESPONSIVE
============================== */

@media (max-width:900px){

.borelink-nav{
flex-wrap:wrap;
max-width:100%;
}

.borelink-logo{
order:1;
}

.borelink-nav-right{
order:2;
margin-left:auto;
flex-wrap:wrap;
justify-content:flex-end;
}

.borelink-admin-nav{
border-left:none;
padding-left:0;
}

.borelink-menu{
order:3;
width:100%;
justify-content:center;
}

.borelink-menu-list{
flex-wrap:wrap;
gap:14px;
justify-content:center;
}

}

/* PROMOTE BUTTONS */

.borelink-promote-7{
background:#F7931E;
color:#fff;
padding:4px 6px;
border-radius:4px;
font-size:11px;
margin-left:4px;
}

.borelink-promote-30{
background:#2ecc71;
color:#fff;
padding:4px 6px;
border-radius:4px;
font-size:11px;
margin-left:4px;
}

.borelink-promote-7:hover{
background:#d98118;
}

.borelink-promote-30:hover{
background:#27ae60;
}

.promoted-badge{
background:#f39c12;
color:#fff;
font-weight:700;
font-size:11px;
padding:4px 8px;
border-radius:4px;
display:inline-block;
margin-bottom:6px;
}

/* ==============================
BORELINK AUTH MODAL (ISOLATED)
============================== */

.bl-modal-overlay{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:rgba(0,0,0,0.65);
  display:none;
  z-index:99999;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  box-sizing:border-box;
  padding:24px 16px;
  align-items:flex-start;
  justify-content:center;
  opacity:0;
  transition:opacity 0.35s ease;
}

.bl-modal-overlay.bl-modal-open{
  opacity:1;
}

.bl-modal-box{
  width:min(1200px, 96vw);
  max-width:100%;
  background:#fff;
  margin:24px auto 32px;
  display:flex;
  border-radius:12px;
  overflow:visible;
  position:relative;
  box-shadow:0 12px 48px rgba(0,0,0,0.25);

  min-height:min(520px, calc(100vh - 80px));
  max-height:none;
  height:auto;

  align-items:stretch;
  flex-wrap:nowrap;

  opacity:0;
  transform:translateX(56px);
  transition:opacity 0.45s cubic-bezier(0.22, 1, 0.36, 1), transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.bl-modal-overlay.bl-modal-open .bl-modal-box{
  opacity:1;
  transform:translateX(0);
}

/* LEFT SIDE */
.bl-modal-left{
  flex:1 1 58%;
  min-width:0;
  min-height:280px;
  background:#0a2540;
  color:#fff;
  padding:0px;
  border-radius:12px 0 0 12px;
  overflow:hidden;
}

.bl-modal-left h2{
  margin-bottom:10px;
}

.bl-modal-right{
  position:relative;
  flex:0 1 42%;
  min-width:min(380px, 100%);
  box-sizing:border-box;
  padding:48px 36px 40px;
  background:#fff;
  border-radius:0 12px 12px 0;

  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:12px;
  min-height:0;
  overflow:visible;
}

.bl-modal-right input{
  width:100%;
  padding:12px;
  border:1px solid #ddd;
  border-radius:6px;
  margin-bottom:10px;
}

.bl-modal-btn{
  width:100%;
  padding:12px;
  border:none;
  border-radius:6px;
  cursor:pointer;
  font-weight:600;
  display:block;        /* 🔥 forces full width */
  text-align:center;
  box-sizing:border-box;
}

/* Buttons */
.bl-primary{background:#F7931E;color:#fff;}
.bl-primary:hover{background:#d98118;}

.bl-google{background:#f1f1f1;color:#333;}
.bl-facebook{background:#1877f2;color:#fff;}
.bl-facebook:hover{background:#166fe5;color:#fff;}
.bl-x{background:#000;color:#fff;}
.bl-x:hover{background:#222;color:#fff;}

.bl-guest{
  background:none;
  border:none;
  margin-top:12px;
  cursor:pointer;
  color:#666;
  font-size:13px;
}

/* CLOSE (inside .bl-modal-right so it does not clip the form) */
.bl-modal-right .bl-close{
  position:absolute;
  top:12px;
  right:12px;
  z-index:6;
  cursor:pointer;
  font-size:20px;
  color:#333;
  line-height:1;
  padding:6px 8px;
  background:transparent;
  border:none;
}
.bl-modal-right .bl-close:hover,
.bl-modal-right .bl-close:focus{
  color:#000;
}


.bl-modal-image{
  background:url('https://borelink.com/wp-content/uploads/2026/03/ChatGPT-Image-Mar-24-2026-09_42_21-PM.png') center/cover no-repeat;
  position:relative;
}

.bl-modal-overlay-text{
  position:absolute;
  bottom:20px;
  left:20px;
  right:20px;
  color:#fff;
  background:rgba(0,0,0,0.4);
  padding:20px;
  border-radius:8px;
}
.bl-modal-right a.bl-modal-btn{
  display:block;
  text-decoration:none;
}

.bl-modal-right a.bl-modal-btn.bl-social-btn--with-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-align:left;
}

.bl-social-icon{
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:0;
}

.bl-social-icon svg{
  display:block;
}

.bl-social-label{
  flex:0 1 auto;
}

/* Theme social buttons: icon-only mode (not Nextend widget HTML; see borelink_social_login_show_text_labels). */
.bl-modal-right a.bl-modal-btn.bl-social-btn--icon-only,
.borelink-myaccount-social-login .borelink-myaccount-social-btn.bl-social-btn--icon-only{
  justify-content:center;
  gap:0;
  min-height:48px;
  padding-left:16px;
  padding-right:16px;
}

.bl-social-btn--icon-only .bl-social-label{
  display:none !important;
}
.bl-modal-right hr{
  margin:10px 0;
  border:none;
  border-top:1px solid #ddd;
}

@media (max-width:900px){
  .bl-modal-overlay{
    padding:12px 10px;
  }

  .bl-modal-overlay .bl-modal-box{
    transform:translateY(32px);
  }

  .bl-modal-overlay.bl-modal-open .bl-modal-box{
    transform:translateY(0);
  }

  .bl-modal-box{
    flex-direction:column;
    width:100%;
    max-width:480px;
    margin:8px auto 24px;
    min-height:0;
  }

  .bl-modal-left{
    flex:0 0 auto;
    width:100%;
    min-height:200px;
    border-radius:12px 12px 0 0;
  }

  .bl-modal-right{
    flex:1 1 auto;
    width:100%;
    min-width:0;
    padding:44px 20px 32px;
    border-radius:0 0 12px 12px;
  }
}

.bl-human-check-card{
  margin:0 0 10px;
  padding:0;
  border:none;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.bl-social-recaptcha-wrap{
  margin-bottom:0;
}

.bl-social-gated.is-disabled{
  opacity:0.55;
  cursor:not-allowed;
  pointer-events:none;
}

.bl-modal-btn.bl-social-gated.is-disabled{
  opacity:0.58;
  filter:saturate(0.8);
}


/* My account — single reCAPTCHA before Log in (password + social) */
.borelink-wc-login-recaptcha-wrap{
  margin:1em 0 0.5em;
}

.borelink-wc-login-recaptcha-label{
  font-size:13px;
  color:#555;
  margin:0 0 8px;
  line-height:1.35;
}

/* My account — social login under classic login form */
.borelink-myaccount-social-login{
  margin-top:1.75em;
  padding-top:1.25em;
  border-top:1px solid #e2e8f0;
  clear:both;
}

.borelink-myaccount-social-heading{
  margin:0 0 12px;
  font-size:14px;
  color:#555;
  text-align:center;
}

.borelink-myaccount-social-recaptcha-note{
  font-size:13px;
  color:#555;
  margin:0 0 8px;
  line-height:1.35;
}

.borelink-myaccount-social-recaptcha-wrap{
  margin-bottom:12px;
}

.borelink-myaccount-social-login .borelink-myaccount-social-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  width:100%;
  box-sizing:border-box;
  padding:12px 16px;
  border:none;
  border-radius:6px;
  font-weight:600;
  text-align:center;
  text-decoration:none;
  margin-bottom:10px;
  cursor:pointer;
  line-height:1.2;
}

.borelink-myaccount-social-login .borelink-myaccount-social-btn:last-child{
  margin-bottom:0;
}

.borelink-myaccount-social-login .borelink-myaccount-social-btn:hover{
  text-decoration:none;
  filter:brightness(0.97);
}

/* Footer: single compact line (see style.css) */

/* About page */
.borelink-about-page{
  padding-bottom:32px;
}

/* Match homepage: use full width inside .borelink-container (no narrow reading column). */
.borelink-about{
  max-width:none;
  width:100%;
  margin-left:0;
  margin-right:0;
}

.borelink-about-header{
  margin-bottom:28px;
  padding-bottom:16px;
  border-bottom:1px solid #e5e5e5;
}

.borelink-about-header h1{
  margin:0 0 8px;
  font-size:28px;
  color:var(--carbon-black,#1A1A1A);
}

.borelink-about-lead{
  margin:0;
  font-size:16px;
  color:#555;
}

.borelink-about-block{
  margin-bottom:28px;
}

.borelink-about-block h2{
  margin:0 0 10px;
  font-size:20px;
  color:var(--steel-blue,#2F5D7C);
}

.borelink-about-block p{
  margin:0;
  line-height:1.6;
  color:#333;
}

.borelink-about-block p + p{
  margin-top:0.85em;
}

.borelink-about-block ul{
  margin:0.75em 0 0;
  padding-left:1.25rem;
  line-height:1.55;
  color:#333;
}

.borelink-about-block ul li + li{
  margin-top:0.5em;
}

.borelink-rep-explainer__weights{
  list-style:disc;
}

.borelink-rep-explainer__footnote{
  border-top:1px solid #e5e5e5;
  padding-top:20px;
  margin-top:8px;
}

.borelink-about-values-intro{
  margin-bottom:10px !important;
  font-size:15px;
  color:#555;
}

.borelink-about-values{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  list-style:none;
  margin:0;
  padding:0;
}

.borelink-about-values li{
  background:var(--concrete-gray,#F4F6F8);
  border:1px solid #e5e5e5;
  border-radius:999px;
  padding:6px 14px;
  font-size:14px;
  font-weight:600;
  color:#333;
}

.borelink-about-legal{
  margin-top:36px;
  padding-top:24px;
  border-top:1px solid #e5e5e5;
}

.borelink-about-legal h2{
  margin:0 0 12px;
  font-size:18px;
  color:var(--carbon-black,#1A1A1A);
}

.borelink-about-legal-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.borelink-about-legal-list a{
  color:var(--steel-blue,#2F5D7C);
  font-weight:600;
  text-decoration:none;
}

.borelink-about-legal-list a:hover{
  text-decoration:underline;
}

.borelink-about-more .borelink-about-legal-list li{
  color:#333;
  line-height:1.5;
}

.borelink-about-subnav{
  margin:0 0 24px;
  padding:12px 0;
  border-bottom:1px solid #e5e5e5;
}

.borelink-about-subnav__list{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  list-style:none;
  margin:0;
  padding:0;
}

.borelink-about-subnav__link{
  display:inline-block;
  padding:6px 4px;
  font-size:14px;
  font-weight:600;
  color:#555;
  text-decoration:none;
  border-bottom:2px solid transparent;
}

.borelink-about-subnav__link:hover{
  color:var(--steel-blue,#2F5D7C);
}

.borelink-about-subnav__link.is-current{
  color:var(--steel-blue,#2F5D7C);
  border-bottom-color:var(--safety-orange,#F7931E);
}

.borelink-policies-cards{
  list-style:none;
  margin:0 0 32px;
  padding:0;
  display:grid;
  gap:16px;
  grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
}

.borelink-policies-card{
  margin:0;
  padding:18px;
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:10px;
  box-shadow:0 1px 3px rgba(0,0,0,0.04);
}

.borelink-policies-card h2{
  margin:0 0 8px;
  font-size:17px;
}

.borelink-policies-card h2 a{
  color:var(--steel-blue,#2F5D7C);
  text-decoration:none;
}

.borelink-policies-card h2 a:hover{
  text-decoration:underline;
}

.borelink-policies-card p{
  margin:0;
  font-size:14px;
  color:#555;
  line-height:1.5;
}

.borelink-about--policies .borelink-policies-embed-wrap > .borelink-policies-embed + .borelink-policies-embed{
  margin-top:36px;
  padding-top:28px;
  border-top:1px solid #e5e5e5;
}

.borelink-about--policies .borelink-refund-summary{
  margin-top:36px;
  padding-top:28px;
  border-top:1px solid #e5e5e5;
}

.borelink-legal-header--embed{
  margin-bottom:16px;
  padding-bottom:12px;
  border-bottom:1px solid #e8e8e8;
}

.borelink-policies-embed-title{
  margin:0 0 8px;
  font-size:22px;
  font-weight:700;
  color:var(--steel-blue,#2F5D7C);
}

.borelink-policies-embed .borelink-legal-prose{
  max-width:100%;
}

.borelink-contact-topics{
  margin:10px 0 0;
  font-size:15px;
  line-height:1.55;
  color:#555;
}

.borelink-refund-summary .borelink-refund-summary__more{
  margin-top:12px;
  font-size:14px;
}

.borelink-contact-block .borelink-contact-email-link{
  font-size:18px;
  font-weight:600;
  color:var(--steel-blue,#2F5D7C);
}

.borelink-contact-notice{
  padding:12px 16px;
  border-radius:8px;
  margin:0 0 20px;
  font-size:14px;
}

.borelink-contact-notice--success{
  background:#e8f6ee;
  border:1px solid #b8dfc8;
  color:#1e4d2b;
}

.borelink-contact-notice--error{
  background:#fdeaea;
  border:1px solid #f0b4b4;
  color:#6b1c1c;
}

.borelink-contact-form__hp{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}

.borelink-contact-form__row{
  margin:0 0 14px;
}

.borelink-contact-form__row label{
  display:block;
  margin-bottom:6px;
  font-size:14px;
  font-weight:600;
  color:#333;
}

.borelink-contact-form__row .required{
  color:#c00;
}

.borelink-contact-form__row input,
.borelink-contact-form__row textarea{
  width:100%;
  max-width:32rem;
  padding:10px 12px;
  border:1px solid #ccc;
  border-radius:6px;
  font-size:15px;
  box-sizing:border-box;
}

.borelink-contact-form__actions{
  margin-top:18px;
}

.borelink-contact-form__submit{
  padding:10px 22px;
  font-size:15px;
  font-weight:600;
  color:#fff;
  background:var(--safety-orange,#F7931E);
  border:none;
  border-radius:6px;
  cursor:pointer;
}

.borelink-contact-form__submit:hover{
  background:var(--safety-orange-hover,#d98118);
}

.borelink-rates-table{
  width:100%;
  max-width:42rem;
  border-collapse:collapse;
  margin:12px 0;
  font-size:14px;
}

.borelink-rates-table th,
.borelink-rates-table td{
  border:1px solid #e5e5e5;
  padding:10px 12px;
  text-align:left;
  vertical-align:top;
}

.borelink-rates-table thead th{
  background:var(--concrete-gray,#F4F6F8);
  font-weight:600;
}

.borelink-rates-note{
  font-size:13px;
  color:#666;
  line-height:1.5;
  margin-top:8px;
}

a.borelink-btn-secondary{
  display:inline-block;
  margin-top:8px;
  padding:8px 16px;
  font-size:14px;
  font-weight:600;
  color:var(--steel-blue,#2F5D7C);
  border:1px solid var(--steel-blue,#2F5D7C);
  border-radius:6px;
  text-decoration:none;
}

a.borelink-btn-secondary:hover{
  background:rgba(47,93,124,0.08);
}

.borelink-advertise-sponsored-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}

.borelink-advertise-news-preview__inner{
  margin-top:8px;
}

.borelink-advertise-news-preview__inner.borelink-newsroom,
.borelink-advertise-news-preview__inner .news-section-title{
  text-align:left;
}

.borelink-legal-page{
  padding-bottom:48px;
}

.borelink-legal{
  max-width:none;
  width:100%;
  margin:0;
  padding:24px 5px 48px;
  box-sizing:border-box;
}

.borelink-legal-header{
  margin-bottom:28px;
  padding-bottom:16px;
  border-bottom:1px solid #e5e5e5;
}

.borelink-legal-header h1{
  margin:0 0 8px;
  font-size:28px;
  color:var(--carbon-black,#1A1A1A);
}

.borelink-legal-meta{
  margin:0;
  font-size:14px;
  color:#666;
}

.borelink-legal-actions{
  margin:12px 0 0;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}

.borelink-legal-print-btn{
  padding:8px 14px;
  border:1px solid var(--steel-blue,#2F5D7C);
  background:#fff;
  color:var(--steel-blue,#2F5D7C);
  border-radius:6px;
  font-size:14px;
  font-weight:600;
  cursor:pointer;
}

.borelink-legal-print-btn:hover{
  background:var(--steel-blue,#2F5D7C);
  color:#fff;
}

a.borelink-legal-download-btn{
  display:inline-block;
  padding:8px 14px;
  border-radius:6px;
  font-size:14px;
  font-weight:600;
  background:var(--safety-orange,#F7931E);
  color:#fff;
  text-decoration:none;
}

a.borelink-legal-download-btn:hover{
  background:var(--safety-orange-hover,#d98118);
  color:#fff;
}

@media print{
  .borelink-ads-dock-root,
  .borelink-ad-zone,
  .borelink-header,
  .borelink-footer,
  .borelink-legal-actions,
  #blAuthModal{
    display:none !important;
  }
  .borelink-legal-prose{
    font-size:12pt;
  }
}

.borelink-legal-prose{
  font-size:16px;
  line-height:1.65;
  color:#333;
}

.borelink-legal-prose h2{
  margin:28px 0 12px;
  font-size:18px;
  color:var(--steel-blue,#2F5D7C);
}

.borelink-legal-prose p{
  margin:0 0 14px;
}

.borelink-legal-prose ul{
  margin:0 0 14px 1.2em;
  padding:0;
}

.borelink-legal-prose li{
  margin-bottom:8px;
}

.borelink-legal-disclaimer{
  margin-top:32px;
  padding-top:20px;
  border-top:1px solid #eee;
  font-size:13px;
  color:#666;
  font-style:italic;
}

/* Registration: Terms + Privacy consent */

.borelink-legal-consent-row{
  margin:1em 0;
  font-size:14px;
  line-height:1.5;
}

.borelink-legal-consent-text a{
  white-space:nowrap;
}

form.register .borelink-legal-consent-row label,
.woocommerce-form-register .borelink-legal-consent-row label{
  display:block;
  cursor:pointer;
}

.borelink-legal-consent-row input[type="checkbox"]{
  margin-right:8px;
  vertical-align:middle;
}

/* Full width inside .borelink-container (Marketplace, Jobs, Services, Newsroom, Forum, Projects). */
.borelink-newsroom {
    max-width: none;
    width: 100%;
    margin: 0;
    padding: 40px 0;
    box-sizing: border-box;
}

/* —— Forum hub (list + community chat column) —— */
.borelink-forum-hub__toolbar{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:20px;
}

.borelink-forum-hub__intro{
  margin:8px 0 0;
  max-width:48rem;
  line-height:1.55;
  color:#555;
  font-size:15px;
}

.borelink-forum-hub__actions{
  flex-shrink:0;
  margin-left:auto;
}

.borelink-forum-notice{
  padding:12px 16px;
  border-radius:8px;
  margin:0 0 20px;
  font-size:14px;
}

.borelink-forum-notice--success{
  background:#e8f6ee;
  border:1px solid #b8dfc8;
  color:#1e4d2b;
}

.borelink-forum-notice--error{
  background:#fdeaea;
  border:1px solid #f0b4b4;
  color:#6b1c1c;
}

.borelink-forum-hub__layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,320px);
  gap:28px;
  align-items:start;
}

@media (max-width:900px){
  .borelink-forum-hub__layout{
    grid-template-columns:1fr;
  }
}

.borelink-forum-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.borelink-forum-list__item{
  margin:0;
}

.borelink-forum-list__link{
  display:grid;
  grid-template-columns:1fr auto auto;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:10px;
  text-decoration:none;
  color:inherit;
  box-shadow:0 1px 4px rgba(0,0,0,0.04);
  transition:box-shadow 0.2s, border-color 0.2s;
}

.borelink-forum-list__link:hover{
  border-color:var(--steel-blue,#2F5D7C);
  box-shadow:0 4px 14px rgba(47,93,124,0.12);
}

.borelink-forum-list__name{
  font-weight:700;
  font-size:16px;
  color:var(--carbon-black,#1A1A1A);
}

.borelink-forum-list__meta{
  font-size:13px;
  color:#666;
  white-space:nowrap;
}

.borelink-forum-list__chev{
  font-size:20px;
  color:var(--safety-orange,#F7931E);
  font-weight:700;
}

.borelink-forum-list__empty{
  color:#666;
  font-size:15px;
  margin:0 0 24px;
}

.borelink-forum-chat-panel{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:12px;
  padding:16px;
  box-shadow:0 2px 10px rgba(0,0,0,0.06);
  position:sticky;
  top:100px;
}

@media (max-width:900px){
  .borelink-forum-chat-panel{
    position:static;
  }
}

.borelink-forum-chat-panel__head h2{
  margin:0 0 6px;
  font-size:18px;
  color:var(--steel-blue,#2F5D7C);
}

.borelink-forum-chat-panel__sub{
  margin:0 0 12px;
  font-size:13px;
  color:#666;
}

.borelink-forum-chat__scroll{
  max-height:min(420px,55vh);
  overflow-y:auto;
  padding-right:4px;
}

.borelink-forum-chat__msg{
  padding:10px 0;
  border-bottom:1px solid #eee;
}

.borelink-forum-chat__msg:last-child{
  border-bottom:none;
}

.borelink-forum-chat__msg-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  font-size:12px;
  color:#888;
  margin-bottom:4px;
}

.borelink-forum-chat__author{
  font-weight:600;
  color:#444;
}

.borelink-forum-chat__text{
  margin:0 0 6px;
  font-size:14px;
  line-height:1.45;
  color:#333;
}

.borelink-forum-chat__theme{
  font-size:12px;
  font-weight:600;
  color:var(--steel-blue,#2F5D7C);
  text-decoration:none;
}

.borelink-forum-chat__theme:hover{
  text-decoration:underline;
}

.borelink-forum-chat__empty{
  margin:0;
  font-size:14px;
  color:#666;
  line-height:1.5;
}

.borelink-forum-propose{
  margin-top:40px;
  padding-top:28px;
  border-top:1px solid #e5e5e5;
}

.borelink-forum-propose__hint{
  font-size:14px;
  color:#555;
  margin:0 0 16px;
  max-width:42rem;
}

.borelink-forum-propose__hp{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}

.borelink-forum-propose__row label{
  display:block;
  font-weight:600;
  font-size:14px;
  margin-bottom:6px;
  color:#333;
}

.borelink-forum-propose__row input[type="text"],
.borelink-forum-propose__row textarea{
  width:100%;
  max-width:42rem;
  padding:10px 12px;
  border:1px solid #ccc;
  border-radius:8px;
  font-size:15px;
  box-sizing:border-box;
}

.borelink-forum-propose__submit{
  margin-top:16px;
}

.borelink-forum-single__nav{
  margin-bottom:16px;
}

.borelink-forum-single__back{
  font-weight:600;
  color:var(--steel-blue,#2F5D7C);
  text-decoration:none;
  font-size:15px;
}

.borelink-forum-single__back:hover{
  text-decoration:underline;
}

.borelink-forum-single__header h1{
  margin:0 0 16px;
  font-size:28px;
  color:var(--carbon-black,#1A1A1A);
}

.borelink-forum-single__body{
  font-size:16px;
  line-height:1.6;
  color:#333;
  margin-bottom:28px;
}

.borelink-forum-single__discussion{
  margin-top:8px;
}

.borelink-comments__list{
  list-style:none;
  margin:0 0 24px;
  padding:0;
}

.borelink-comments .comment{
  background:#fff;
  border:1px solid #eee;
  border-radius:10px;
  padding:14px 16px;
  margin-bottom:12px;
}

.borelink-comments .comment-author{
  font-weight:600;
  font-size:14px;
}

.borelink-comments .comment-meta{
  font-size:12px;
  color:#888;
  margin:4px 0 8px;
}

.borelink-comments .comment-content{
  font-size:15px;
  line-height:1.5;
  color:#333;
}

.borelink-comments__form .comment-form-comment label{
  display:block;
  font-weight:600;
  margin-bottom:6px;
}

.borelink-comments__form textarea{
  width:100%;
  max-width:42rem;
  padding:10px 12px;
  border:1px solid #ccc;
  border-radius:8px;
  font-size:15px;
  box-sizing:border-box;
}

.borelink-comments__closed{
  color:#666;
  font-size:14px;
}

.news-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    margin-top: 30px;
}

.news-card {
    border: 1px solid #eee;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    transition: 0.3s;
}

.news-card:hover {
    transform: translateY(-5px);
}

.news-image img {
    width: 100%;
    height: 200px;
    object-fit: cover;
}

.news-content {
    padding: 15px;
}

.news-category span {
    font-size: 12px;
    color: #F7931E;
    font-weight: bold;
}

.news-content h2 {
    font-size: 18px;
    margin: 10px 0;
}

.read-more {
    color: #F7931E;
    font-weight: bold;
    text-decoration: none;
}

.news-section-title {
    margin-top: 40px;
    font-size: 22px;
}

.news-row-wrapper {
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 10px;
    scrollbar-width: none;
}

.news-row-wrapper::-webkit-scrollbar {
    display: none;
}

.news-row {
    display: flex;
    gap: 20px;
    scroll-behavior: smooth;
}

.news-card {
    min-width: 280px;
    flex: 0 0 auto;
    border: 1px solid #eee;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    transition: 0.3s;
}

.news-card:hover {
    transform: scale(1.03);
}

/* Optional scrollbar styling */
.news-row-wrapper::-webkit-scrollbar {
    height: 8px;
}

/* WRAPPER */
.news-row-wrapper {
    position: relative;
    overflow: hidden;
}

/* SCROLL ROW */
.news-row {
    display: flex;
    gap: 20px;
    overflow-x: auto;
    scroll-behavior: smooth;
    padding: 10px 0;
}

/* HIDE SCROLLBAR */
.news-row::-webkit-scrollbar {
    display: none;
}
.news-row {
    scrollbar-width: none;
}

/* CARDS */
.news-card {
    min-width: 280px;
    flex: 0 0 auto;
}

/* BUTTONS */
.scroll-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;

    background: rgba(0,0,0,0.5);
    color: #fff;
    border: none;

    width: 40px;
    height: 60px;

    cursor: pointer;
    font-size: 24px;
    transition: 0.3s;
    opacity: 0;
}

/* LEFT / RIGHT */
.scroll-btn.left {
    left: 0;
    border-radius: 0 6px 6px 0;
}

.scroll-btn.right {
    right: 0;
    border-radius: 6px 0 0 6px;
}

/* SHOW ON HOVER */
.news-row-wrapper:hover .scroll-btn {
    opacity: 1;
}

/* HOVER EFFECT */
.scroll-btn:hover {
    background: rgba(0,0,0,0.8);
}

.news-row-wrapper::before,
.news-row-wrapper::after {
    content: '';
    position: absolute;
    top: 0;
    width: 60px;
    height: 100%;
    z-index: 5;
    pointer-events: none;
}

.news-row-wrapper::before {
    left: 0;
    background: linear-gradient(to right, #fff, transparent);
}

.news-row-wrapper::after {
    right: 0;
    background: linear-gradient(to left, #fff, transparent);
}

/* WooCommerce My account — Texas 811 ticket list */
.borelink-tx811-account{
  margin-top:8px;
}
.borelink-tx811-account__intro{
  max-width:42rem;
  line-height:1.55;
  color:#555;
  font-size:14px;
  margin-bottom:20px;
}
.borelink-tx811-account__add{
  max-width:28rem;
  margin-bottom:28px;
  padding:16px;
  background:var(--concrete-gray,#F4F6F8);
  border-radius:10px;
  border:1px solid #e5e5e5;
}
.borelink-tx811-account__add input[type="text"]{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  padding:8px 10px;
}
.borelink-tx811-account__table ul.borelink-tx811-account__items{
  margin:8px 0 0;
  padding-left:1.2em;
  font-size:14px;
}
.borelink-tx811-account__err{
  color:#a40000;
  font-size:14px;
}
.borelink-tx811-account__meta{
  font-size:12px;
  color:#888;
  margin:8px 0 0;
}
.borelink-tx811-account__hint{
  font-size:14px;
  color:#666;
  margin:0;
}

/* AI assistant (Jhonny): inner wrapper inside .borelink-newsroom like Jobs / Services */
.borelink-newsroom .borelink-ai-page{
  max-width:none;
}
.borelink-newsroom .borelink-ai-page > h1{
  margin:0 0 12px;
}
.borelink-ai-page__tagline{
  max-width:48rem;
  margin:0 0 20px;
  color:#555;
  line-height:1.55;
  font-size:15px;
}
.borelink-ai-page__reply{
  margin:0;
}
.borelink-ai-page__says{
  margin:0 0 10px;
  font-size:15px;
  color:var(--carbon-black,#1A1A1A);
}
.borelink-ai-page__reply-body{
  font-size:inherit;
  line-height:inherit;
}
.borelink-ai-page__reply-body > *:first-child{
  margin-top:0;
}
.borelink-ai-disclaimer{
  background:#fff8e6;
  border:1px solid #e8d48b;
  border-radius:10px;
  padding:16px 18px;
  margin-bottom:20px;
  font-size:14px;
  line-height:1.5;
}
/* Jhonny template: span container width (no narrow reading column). */
body.borelink-jhonny-page .borelink-ai-page--shell .borelink-ai-page__tagline,
body.borelink-jhonny-page .borelink-ai-page--shell .borelink-ai-page__warn,
body.borelink-jhonny-page .borelink-ai-page--shell .borelink-ai-disclaimer{
  max-width:none;
}
body.borelink-jhonny-page .borelink-ai-page--shell .borelink-ai-page__form{
  max-width:none;
  width:100%;
}
body.borelink-jhonny-page .borelink-ai-page--shell .borelink-ai-page__form input[type="search"]{
  flex:1 1 0;
  min-width:0;
}
.borelink-ai-page__form{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-bottom:16px;
}
.borelink-ai-page__form input[type="search"]{
  flex:1 1 240px;
  max-width:100%;
  padding:10px 12px;
  border:1px solid #ccc;
  border-radius:8px;
  font-size:15px;
  box-sizing:border-box;
}
.borelink-ai-page__status{
  min-height:1.25em;
  font-size:14px;
  color:var(--steel-blue,#2F5D7C);
}
.borelink-ai-page__warn{
  background:#fdeaea;
  border:1px solid #f0b4b4;
  padding:12px 14px;
  border-radius:8px;
  font-size:14px;
}
.borelink-ai-page__answer{
  margin:20px 0 8px;
  font-size:16px;
  line-height:1.6;
  color:#333;
}
.borelink-ai-page__sources{
  margin-top:20px;
  padding-top:22px;
  border-top:1px solid #e5e5e5;
  clear:both;
}
.borelink-ai-sources__title{
  font-size:18px;
  color:var(--steel-blue,#2F5D7C);
  margin:0 0 12px;
}
.borelink-ai-sources__list{
  margin:0;
  padding-left:1.2em;
}
.borelink-ai-sources__item{
  margin-bottom:20px;
}
.borelink-ai-sources__type{
  font-size:13px;
  color:#666;
  font-weight:400;
}
.borelink-ai-sources__agency{
  font-size:13px;
  color:#444;
  margin-top:4px;
}
.borelink-ai-sources__url{
  display:inline-block;
  margin:6px 0;
  font-size:13px;
  word-break:break-all;
}
.borelink-ai-sources__context{
  display:block;
  margin-top:8px;
  padding:12px;
  background:var(--concrete-gray,#F4F6F8);
  border:1px solid #e5e5e5;
  border-radius:8px;
  font-size:13px;
  line-height:1.45;
  white-space:pre-wrap;
  max-height:320px;
  overflow:auto;
}
