/* Styles for front-page.php (moved out of the template, 2026-10-10). */
/* ==========================================================
   BoiseCarRentals — Premium Homepage Design
   Scoped to .bcrhp-page so existing theme/components remain safe.
   ========================================================== */

/* Manrope is loaded in the <head> (functions.php: preconnect + non-blocking stylesheet). */

.bcrhp-page{
    --bcr-navy:#0b2545;
    --bcr-navy-deep:#071b33;
    --bcr-ink:#142b46;
    --bcr-muted:#68778a;
    --bcr-soft:#f6f8fb;
    --bcr-line:#e5eaf0;
    --bcr-white:#fff;
    --bcr-orange:#f6a400;
    --bcr-orange-dark:#df9000;
    --bcr-orange-soft:#fff7e6;
    --bcr-green:#198754;
    --bcr-shadow:0 18px 50px rgba(8,31,57,.10);
    --bcr-radius:18px;
    --bcr-max:1240px;

    width:100%;
    background:#fff;
    color:var(--bcr-ink);
    font-family:"Manrope",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size:16px;
    font-weight:400;
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

.bcrhp-page *,
.bcrhp-page *::before,
.bcrhp-page *::after{box-sizing:border-box}

.bcrhp-page a{color:inherit;text-decoration:none}
.bcrhp-page img{max-width:100%;height:auto}
.bcrhp-page h1,
.bcrhp-page h2,
.bcrhp-page h3,
.bcrhp-page p{margin-top:0}
.bcrhp-page h1,
.bcrhp-page h2,
.bcrhp-page h3{font-family:"Manrope",system-ui,sans-serif}
.bcrhp-container{
    width:min(calc(100% - 48px),var(--bcr-max));
    margin-inline:auto;
}

/* ---------- Global section rhythm ---------- */
.bcrhp-section{padding:30px 0}
.bcrhp-heading{
    max-width:760px;
    margin:0 auto 42px;
    text-align:center;
}
.bcrhp-heading-left{
    max-width:760px;
    margin-left:0;
    text-align:left;
}
.bcrhp-heading h2,
.bcrhp-why-copy h2,
.bcrhp-faq-layout h2,
.bcrhp-guides h2{
    color:var(--bcr-ink);
    font-size:clamp(30px,3vw,42px);
    font-weight:700;
    line-height:1.16;
    letter-spacing:-.035em;
    margin-bottom:14px;
}
.bcrhp-heading p{
    margin:0;
    color:var(--bcr-muted);
    font-size:16px;
    font-weight:500;
    line-height:1.75;
}
.bcrhp-mini-label{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:13px;
    color:var(--bcr-orange-dark);
    font-size:12px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.bcrhp-mini-label::before{
    content:"";
    width:26px;
    height:2px;
    background:var(--bcr-orange);
    border-radius:10px;
}

/* ---------- Existing header compatibility ---------- */
.bcrhp-header{
    height:74px;
    background:rgba(255,255,255,.96);
    border-bottom:1px solid rgba(13,37,65,.08);
    position:relative;
    z-index:100;
}
.bcrhp-header-inner{
    height:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.bcrhp-brand{
    display:flex;
    align-items:center;
    color:var(--bcr-ink);
    font-size:22px;
    font-weight:700;
    letter-spacing:-.045em;
}
.bcrhp-brand .custom-logo-link{display:flex;align-items:center}
.bcrhp-brand .custom-logo{max-height:46px;width:auto}
.bcrhp-brand-boise{color:var(--bcr-orange-dark)}
.bcrhp-brand-car{color:var(--bcr-ink)}
.bcrhp-nav{
    display:flex;
    align-items:center;
    gap:30px;
}
.bcrhp-nav a{
    color:#30445c;
    font-size:13px;
    font-weight:700;
    white-space:nowrap;
    transition:color .2s ease;
}
.bcrhp-nav a:hover{color:var(--bcr-orange-dark)}
.bcrhp-nav a span{font-size:11px;margin-left:3px}
.bcrhp-header-cta{
    background:var(--bcr-orange);
    color:#fff!important;
    padding:11px 20px;
    border-radius:9px;
    box-shadow:0 8px 18px rgba(246,164,0,.22);
}
.bcrhp-header-cta:hover{
    background:var(--bcr-orange-dark)!important;
    color:#fff!important;
}
.bcrhp-menu{
    display:none;
    border:0;
    background:transparent;
    color:var(--bcr-ink);
    font-size:24px;
}

/* ---------- Hero ---------- */

.bcrhp-hero{
    position:relative;
    min-height:600px;
}

.bcrhp-hero-bg{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}
.bcrhp-hero{
    position:relative;
    min-height:620px;
    overflow:visible;
    background:var(--bcr-navy-deep);
}
.bcrhp-hero-bg{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    background:
        linear-gradient(90deg,rgba(5,20,39,.94) 0%,rgba(7,27,49,.80) 38%,rgba(7,27,49,.28) 72%,rgba(7,27,49,.06) 100%),
        var(--bcr-hero-img, url('/wp-content/themes/boisecarrentals/assets/images/Boisebanner.webp'));
    background-size:cover;
    background-position:center 48%;
    background-repeat:no-repeat;
}
.bcrhp-hero-inner{
    position:relative;
    z-index:2;
    min-height:520px;
    display:flex;
    align-items:center;
}
.bcrhp-hero-copy{
    width:100%;
    max-width:680px;
    padding:76px 0 175px;
    color:#fff;
}
.bcrhp-eyebrow{
    display:inline-flex;
    align-items:center;
    padding:8px 14px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    background:rgba(255,255,255,.10);
    color:#fff;
    font-size:11px;
    font-weight:700;
    letter-spacing:.13em;
    text-transform:uppercase;
    backdrop-filter:blur(8px);
    margin-bottom:20px;
}
.bcrhp-hero-copy h1{
    max-width:680px;
    color:#fff;
    font-size:clamp(42px,5.2vw,68px);
    font-weight:700;
    line-height:1.04;
    letter-spacing:-.055em;
    margin-bottom:20px;
}
.bcrhp-hero-copy p{
    max-width:630px;
    margin-bottom:28px;
    color:rgba(255,255,255,.92) !important; /* lighter intro text on the photo (2026-10-10) */
    font-size:18px;
    font-weight:500;
    line-height:1.75;
}
.bcrhp-hero-points{
    display:flex;
    flex-wrap:wrap;
    gap:12px 22px;
}
.bcrhp-hero-points span{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#fff;
    font-size:13px;
    font-weight:700;
}
.bcrhp-hero-points i{
    color:var(--bcr-orange);
    font-size:15px;
}

/* ---------- Search card ---------- */
.bcrhp-search-position{
    position:relative;
    z-index:20;
    margin-top:-112px;
}
.bcrhp-search-card{
    padding:22px 24px 18px;
    background:rgba(255,255,255,.98);
    border:1px solid rgba(13,37,65,.10);
    border-radius:18px;
    box-shadow:0 24px 55px rgba(7,27,51,.18);
}
.bcrhp-search-title{
    margin-bottom:12px;
    color:var(--bcr-ink);
    font-size:17px;
    font-weight:700;
    letter-spacing:-.02em;
}
.bcrhp-search-card .bcr-search-form{
    position:static!important;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
}
.bcrhp-search-card .bcr-search-form::before{display:none!important}
.bcrhp-search-card .bcr-search-form .form-label{
    color:#667589!important;
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.07em!important;
    text-transform:uppercase;
    margin-bottom:6px!important;
}
.bcrhp-search-card .bcr-search-form .form-control,
.bcrhp-search-card .bcr-search-form .form-select,
.bcrhp-search-card .bcr-search-pickup-field{
    height:48px!important;
    min-height:48px!important;
    padding:10px 13px!important;
    border:1px solid #dce3eb!important;
    border-radius:9px!important;
    background:#fff!important;
    color:var(--bcr-ink)!important;
    font-family:inherit!important;
    font-size:13px!important;
    font-weight:600!important;
    box-shadow:none!important;
    transition:border-color .2s ease,box-shadow .2s ease;
}
.bcrhp-search-card .bcr-search-form .form-control:focus,
.bcrhp-search-card .bcr-search-form .form-select:focus{
    border-color:var(--bcr-orange)!important;
    box-shadow:0 0 0 3px rgba(246,164,0,.12)!important;
}
.bcrhp-search-card .bcr-search-pickup-field{
    background:var(--bcr-orange-soft)!important;
    border-color:#f0d493!important;
}
.bcrhp-search-card .bcr-search-submit{
    min-height:48px!important;
    height:48px!important;
    padding:0 22px!important;
    border:0!important;
    border-radius:9px!important;
    background:var(--bcr-orange)!important;
    color:#fff!important;
    font-family:inherit!important;
    font-size:13px!important;
    font-weight:700!important;
    box-shadow:0 9px 20px rgba(246,164,0,.20)!important;
    transition:transform .2s ease,background .2s ease;
}
.bcrhp-search-card .bcr-search-submit:hover{
    background:var(--bcr-orange-dark)!important;
    transform:translateY(-1px);
}
.bcrhp-search-card .bcr-search-form .row{
    --bs-gutter-x:12px;
    --bs-gutter-y:12px;
}
.bcrhp-airport-line{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:7px;
    margin-top:13px;
    color:#718096;
    font-size:12px;
    font-weight:600;
}
.bcrhp-airport-line i{color:var(--bcr-orange-dark)}
.bcrhp-airport-line a{
    color:var(--bcr-orange-dark);
    font-weight:700;
}
.bcrhp-airport-line a:hover{text-decoration:underline}

/* ---------- Trust strip ---------- */
.bcrhp-trust-strip{
    background:#fff;
    border-bottom:1px solid var(--bcr-line);
}
.bcrhp-trust-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
}
.bcrhp-trust-grid>div{
    min-height:94px;
    display:grid;
    grid-template-columns:42px 1fr;
    grid-template-rows:auto auto;
    align-content:center;
    padding:16px 25px;
    border-right:1px solid var(--bcr-line);
}
.bcrhp-trust-grid>div:first-child{padding-left:0}
.bcrhp-trust-grid>div:last-child{border-right:0}
.bcrhp-trust-grid i{
    grid-row:1/3;
    align-self:center;
    color:var(--bcr-orange-dark);
    font-size:25px;
}
.bcrhp-trust-grid strong{
    color:var(--bcr-ink);
    font-size:15px;
    font-weight:700;
    line-height:1.25;
}
.bcrhp-trust-grid small{
    color:#7a8797;
    font-size:11px;
    font-weight:600;
}

/* ---------- Vehicles ---------- */
.bcrhp-vehicles{padding-top:30px;padding-bottom:15px}
.bcrhp-vehicle-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:18px;
}
.bcrhp-vehicle-card{
    display:flex;
    flex-direction:column;
    min-width:0;
    overflow:hidden;
    background:#fff;
    border:1px solid var(--bcr-line);
    border-radius:16px;
    color:var(--bcr-ink);
    box-shadow:0 6px 22px rgba(8,31,57,.04);
    transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.bcrhp-vehicle-card:hover{
    transform:translateY(-5px);
    border-color:#efc66b;
    box-shadow:var(--bcr-shadow);
}
.bcrhp-vehicle-media{
    height:175px;
    display:grid;
    place-items:center;
    overflow:hidden;
    background:linear-gradient(180deg,#f7f9fb,#edf2f6);
}
.bcrhp-vehicle-media img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .35s ease;
}
.bcrhp-vehicle-card:hover .bcrhp-vehicle-media img{transform:scale(1.035)}
.bcrhp-vehicle-media i{color:#9aa8b8;font-size:48px}
.bcrhp-vehicle-card .p-4{padding:20px!important}
.bcrhp-vehicle-card h3{
    margin-bottom:9px;
    color:var(--bcr-ink);
    font-size:17px;
    font-weight:700;
    line-height:1.3;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.bcrhp-spec-row{
    display:flex;
    flex-wrap:wrap;
    gap:13px;
    margin-bottom:8px;
    color:#53657a;
    font-size:12px;
    font-weight:700;
}
.bcrhp-spec-row span{display:inline-flex;align-items:center;gap:4px}
.bcrhp-spec-row i{font-size:12px;color:#8190a0}
.bcrhp-vehicle-card p{
    min-height:22px;
    margin:0 0 13px;
    color:#7b8796;
    font-size:13px;
    font-weight:500;
    line-height:1.55;
}
.bcrhp-card-link{
    display:inline-flex;
    align-items:center;
    gap:6px;
    color:var(--bcr-orange-dark);
    font-size:12px;
    font-weight:700;
}
.bcrhp-card-link i{transition:transform .2s ease}
.bcrhp-vehicle-card:hover .bcrhp-card-link i{transform:translateX(3px)}
.bcrhp-outline-btn{
    display:table;
    margin:30px auto 0;
    padding:11px 24px;
    border:1px solid #c9d2dd;
    border-radius:9px;
    background:#fff;
    color:var(--bcr-ink);
    font-size:12px;
    font-weight:700;
    transition:all .2s ease;
}
.bcrhp-outline-btn:hover{
    border-color:var(--bcr-orange);
    color:var(--bcr-orange-dark);
    background:var(--bcr-orange-soft);
}

/* ---------- Rental options ---------- */
.bcrhp-rental-options{
    background:var(--bcr-soft);
    border-top:1px solid var(--bcr-line);
    border-bottom:1px solid var(--bcr-line);
}
.bcrhp-option-grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:15px;
}
.bcrhp-option-card{
    min-height:190px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    text-align:left;
    padding:23px 20px 20px;
    border:1px solid var(--bcr-line);
    border-radius:15px;
    background:#fff;
    color:var(--bcr-ink);
    box-shadow:0 5px 18px rgba(8,31,57,.035);
    transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.bcrhp-option-card:hover{
    transform:translateY(-4px);
    border-color:#efc66b;
    box-shadow:0 15px 30px rgba(8,31,57,.08);
}
.bcrhp-option-card>i{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    margin-bottom:17px;
    border-radius:12px;
    background:var(--bcr-orange-soft);
    color:var(--bcr-orange-dark);
    font-size:21px;
}
.bcrhp-option-card strong{
    margin-bottom:6px;
    color:var(--bcr-ink);
    font-size:14px;
    font-weight:700;
    line-height:1.35;
}
.bcrhp-option-card p{
    margin:0 0 14px;
    color:#788698;
    font-size:12px;
    font-weight:500;
    line-height:1.55;
}
.bcrhp-option-card span{
    display:inline-flex;
    align-items:center;
    gap:5px;
    margin-top:auto;
    color:var(--bcr-orange-dark);
    font-size:13px;
    font-weight:700;
}

/* ---------- Why section ---------- */
.bcrhp-why{
    background:#fff;
    padding:30px 0;
}
.bcrhp-split{
    display:grid;
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
    gap:68px;
    align-items:center;
}
.bcrhp-why-copy h2{
    margin-bottom:24px;
    font-size:clamp(30px,3.2vw,43px);
}
.bcrhp-why-copy ul{
    display:grid;
    gap:18px;
    list-style:none;
    margin:0;
    padding:0;
}
.bcrhp-why-copy li{
    display:grid;
    grid-template-columns:24px 1fr;
    gap:12px;
}
.bcrhp-why-copy li>i{
    padding-top:4px;
    color:var(--bcr-orange);
    font-size:15px;
}
.bcrhp-why-copy strong{
    display:block;
    margin-bottom:4px;
    color:var(--bcr-ink);
    font-size:15px;
    font-weight:700;
}
.bcrhp-why-copy span{
    display:block;
    color:#718094;
    font-size:13px;
    font-weight:500;
    line-height:1.65;
}
.bcrhp-image-panel{
    height:440px;
    overflow:hidden;
    border-radius:20px;
    background:#e8eef4;
    box-shadow:var(--bcr-shadow);
}
.bcrhp-image-panel img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.bcrhp-image-fallback{
    height:100%;
    display:grid;
    place-items:center;
    background:linear-gradient(135deg,#b7c8d9,#68849d);
    color:#fff;
    font-size:30px;
    font-weight:700;
}

/* ---------- Locations ---------- */
.bcrhp-locations{
    background:var(--bcr-soft);
    border-top:1px solid var(--bcr-line);
    padding-top:30px;
    padding-bottom:20px;
}
.bcrhp-location-layout{
    display:grid;
    grid-template-columns:43% 57%;
    overflow:hidden;
    border:1px solid var(--bcr-line);
    border-radius:18px;
    background:#fff;
    box-shadow:0 12px 35px rgba(8,31,57,.06);
}
.bcrhp-location-list{
    background:#fff;
    padding:7px 0;
}
.bcrhp-location-card{
    margin:0;
    padding:26px 28px 20px;
   
}
.bcrhp-location-top{
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:20px;
}
.bcrhp-location-top>i{
    color:var(--bcr-orange-dark);
    font-size:17px;
}
.bcrhp-location-top strong{
    color:var(--bcr-ink);
    font-size:17px;
    font-weight:700;
}
.bcrhp-location-top span{
    margin-left:auto;
    padding:5px 9px;
    border-radius:999px;
    background:#e9f8f0;
    color:#218653;
    font-size:9px;
    font-weight:700;
    white-space:nowrap;
}
.bcrhp-location-card p{
    display:flex;
    align-items:flex-start;
    gap:10px;
    margin:10px 0;
    color:#69798b;
    font-size:13px;
    font-weight:500;
    line-height:1.55;
}
.bcrhp-location-card p i{
    flex:0 0 16px;
    width:16px;
    color:#8794a3;
    font-size:13px;
}
.bcrhp-location-card p strong{color:#40536a;font-weight:700}
.bcrhp-location-card p a{color:#526a84;font-weight:700}
.bcrhp-location-card p a:hover{color:var(--bcr-orange-dark)}
.bcrhp-location-description{
    margin-top:20px;
    padding-top:17px;
    border-top:1px solid #edf1f4;
}
.bcrhp-location-description p{
    display:block;
    margin:0 0 10px;
    color:#7a8796;
    font-size:12px;
}
.bcrhp-location-card>a{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-top:10px;
    color:var(--bcr-orange-dark);
    font-size:15px;
    font-weight:700;
}
.bcrhp-map{
    min-height:380px;
    background:#e8eef3;
}
.bcrhp-map iframe{
    display:block;
    width:100%;
    height:100%;
    min-height:380px;
    border:0;
}

/* ---------- Reviews ---------- */
.bcrhp-reviews{
    background:#fff;
    padding-top:30px;
    padding-bottom:20px;
}
.bcrhp-rating{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-top:-20px;
    color:#738195;
    font-size:13px;
    font-weight:600;
}
.bcrhp-rating strong{
    color:var(--bcr-ink);
    font-size:21px;
    font-weight:700;
}
.bcrhp-stars{
    color:#f3a100;
    letter-spacing:2px;
    font-size:15px;
}
.bcrhp-rating b{
    color:#4285f4;
    font-size:10px;
}
.bcrhp-review-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
    margin-top:38px;
}
.bcrhp-review-card{
    min-height:225px;
    padding:25px;
    border:1px solid var(--bcr-line);
    border-radius:16px;
    background:#fff;
    box-shadow:0 7px 24px rgba(8,31,57,.045);
}
.bcrhp-review-top{
    display:flex;
    justify-content:space-between;
    gap:10px;
    align-items:center;
}
.bcrhp-review-top small{
    color:#929dac;
    font-size:10px;
    font-weight:600;
}
.bcrhp-review-card p{
    min-height:72px;
    margin:18px 0;
    color:#5e6e81;
    font-size:14px;
    font-weight:500;
    line-height:1.7;
}
.bcrhp-review-card strong{
    display:block;
    color:var(--bcr-ink);
    font-size:13px;
    font-weight:700;
}
.bcrhp-review-card>span{
    display:block;
    margin-top:3px;
    color:#8995a4;
    font-size:11px;
    font-weight:600;
}
.bcrhp-text-link{
    display:table;
    margin:24px auto 0;
    color:var(--bcr-orange-dark);
    font-size:16px;
    font-weight:700;
}
.bcrhp-text-link:hover{text-decoration:underline}

/* ---------- Steps ---------- */
.bcrhp-steps{
    background:var(--bcr-soft);
    border-top:1px solid var(--bcr-line);
    border-bottom:1px solid var(--bcr-line);
}
.bcrhp-step-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
}
.bcrhp-step{
    position:relative;
    display:grid;
    grid-template-columns:42px 48px 1fr;
    gap:14px;
    align-items:start;
    padding:5px 28px;
    border-right:1px solid #dfe5ec;
}
.bcrhp-step:first-child{padding-left:0}
.bcrhp-step:last-child{
    padding-right:0;
    border-right:0;
}
.bcrhp-step>span{
    padding-top:4px;
    color:#c2cad3;
    font-size:24px;
    font-weight:700;
    line-height:1;
}
.bcrhp-step>i{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border-radius:13px;
    background:var(--bcr-navy);
    color:#fff;
    font-size:16px;
    box-shadow:0 7px 15px rgba(11,37,69,.13);
}
.bcrhp-step h3{
    margin:0 0 6px;
    color:var(--bcr-ink);
    font-size:15px;
    font-weight:700;
    line-height:1.35;
}
.bcrhp-step p{
    margin:0;
    color:#788697;
    font-size:12px;
    font-weight:500;
    line-height:1.65;
}

/* ---------- FAQ + guides ---------- */
.bcrhp-bottom-info{
    background:#fff;
    padding:30px 0;
}
.bcrhp-bottom-info>.bcrhp-container{
    width:min(calc(100% - 48px),1240px);
    max-width:1240px;
}
.bcrhp-faq-layout>div{width:100%}
.bcrhp-faq-layout>div+div{
    margin-top:78px;
    padding-top:74px;
    border-top:1px solid var(--bcr-line);
}
.bcrhp-faq-layout h2{
    margin-bottom:28px;
    text-align: center;
}
.bcrhp-faq-list{
    overflow:hidden;
    border:1px solid var(--bcr-line);
    border-radius:16px;
}
.bcrhp-faq-list details{
    background:#fff;
    border-bottom:1px solid var(--bcr-line);
}
.bcrhp-faq-list details:last-child{border-bottom:0}
.bcrhp-faq-list summary{
    display:flex;
    justify-content:space-between;
    gap:20px;
    align-items:center;
    padding:20px 24px;
    list-style:none;
    cursor:pointer;
    color:#203852;
    font-size:15px;
    font-weight:700;
    line-height:1.45;
}
.bcrhp-faq-list summary::-webkit-details-marker{display:none}
.bcrhp-faq-list summary::after{
    content:"+";
    flex:0 0 auto;
    color:#8491a0;
    font-size:20px;
    font-weight:500;
}
.bcrhp-faq-list details[open] summary{
    color:var(--bcr-orange-dark);
}
.bcrhp-faq-list details[open] summary::after{content:"−"}
.bcrhp-faq-list p{
    margin:0;
    padding:0 24px 21px;
    color:#728094;
    font-size:13px;
    font-weight:500;
    line-height:1.75;
}
.bcrhp-guides .bcrhp-mini-label,
.bcrhp-guides h2{text-align:center}
.bcrhp-guides .bcrhp-mini-label{
    display:flex;
    justify-content:center;
}
.bcrhp-guide-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
}
.bcrhp-guide-card{
    min-height:350px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    border:1px solid var(--bcr-line);
    border-radius:16px;
    background:#fff;
    color:var(--bcr-ink);
    box-shadow:0 7px 24px rgba(8,31,57,.05);
    transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.bcrhp-guide-card:hover{
    transform:translateY(-5px);
    border-color:#efc66b;
    box-shadow:var(--bcr-shadow);
}
.bcrhp-guide-card img{
    width:100%;
    height:205px;
    object-fit:cover;
    transition:transform .35s ease;
}
.bcrhp-guide-card:hover img{transform:scale(1.025)}
.bcrhp-guide-card strong{
    padding:20px 21px 8px;
    color:var(--bcr-ink);
    font-size:17px;
    font-weight:700;
    line-height:1.4;
}
.bcrhp-guide-card span{
    display:inline-flex;
    align-items:center;
    gap:5px;
    margin-top:auto;
    padding:10px 21px 20px;
    color:var(--bcr-orange-dark);
    font-size:16px;
    font-weight:700;
}



/* ---------- Legacy final CTA compatibility ---------- */
.bcrhp-final-cta{
    background:var(--bcr-navy-deep);
    color:#fff;
    padding:55px 0;
}
.bcrhp-final-cta .bcrhp-container{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}
.bcrhp-final-cta h2{
    margin-bottom:7px;
    color:#fff;
    font-size:28px;
    font-weight:700;
    line-height:1.2;
}
.bcrhp-final-cta p{
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:13px;
    font-weight:500;
}
.bcrhp-final-cta a{
    padding:13px 22px;
    border-radius:9px;
    background:var(--bcr-orange);
    color:#fff;
    font-size:12px;
    font-weight:700;
    white-space:nowrap;
}

/* ---------- Tablet ---------- */
@media (max-width:1100px){
    .bcrhp-container{width:min(calc(100% - 40px),var(--bcr-max))}
    .bcrhp-nav{gap:18px}
    .bcrhp-nav a{font-size:12px}
    .bcrhp-vehicle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .bcrhp-option-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .bcrhp-split{gap:40px}
}

/* ---------- Mobile ---------- */
@media (max-width:767px){
    
    .bcrhp-section{padding:30px 0}
    .bcrhp-container{width:calc(100% - 32px)}

    .bcrhp-header{height:64px}
    .bcrhp-nav{
        display:none;
        position:absolute;
        top:64px;
        left:16px;
        right:16px;
        flex-direction:column;
        align-items:stretch;
        gap:0;
        padding:10px;
        border:1px solid var(--bcr-line);
        border-radius:13px;
        background:#fff;
        box-shadow:0 18px 40px rgba(8,31,57,.14);
    }
    .bcrhp-nav.is-open{display:flex}
    .bcrhp-nav a{
        padding:13px 10px;
        border-bottom:1px solid #eef1f4;
        font-size:13px;
    }
    .bcrhp-nav a:last-child{
        border-bottom:0;
        text-align:center;
    }
    .bcrhp-menu{display:block}

    .bcrhp-hero{min-height:565px}
    .bcrhp-hero-inner{min-height:500px;align-items:flex-start}
    .bcrhp-hero-copy{padding:58px 0 155px}
    .bcrhp-hero-copy h1{
        font-size:43px;
        letter-spacing:-.045em;
    }
    .bcrhp-hero-copy p{
        font-size:16px;
        line-height:1.65;
    }
    .bcrhp-hero-points{
        display:grid;
        gap:9px;
    }

    .bcrhp-search-position{margin-top:-105px}
    .bcrhp-search-card{
        padding:18px 16px 15px;
        border-radius:15px;
    }

    .bcrhp-trust-grid{grid-template-columns:repeat(2,1fr)}
    .bcrhp-trust-grid>div{
        min-height:82px;
        padding:13px 14px;
        border-right:1px solid var(--bcr-line);
    }
    .bcrhp-trust-grid>div:nth-child(2){border-right:0}
    .bcrhp-trust-grid>div:nth-child(-n+2){border-bottom:1px solid var(--bcr-line)}
    .bcrhp-trust-grid>div:first-child{padding-left:14px}

    .bcrhp-heading{margin-bottom:30px}
    .bcrhp-heading h2,
    .bcrhp-why-copy h2,
    .bcrhp-faq-layout h2,
    .bcrhp-guides h2{
        font-size:30px;
    }
    .bcrhp-heading p{font-size:14px}

    .bcrhp-vehicle-grid,
    .bcrhp-option-grid,
    .bcrhp-review-grid,
    .bcrhp-guide-grid{
        grid-template-columns:1fr 1fr;
    }

    .bcrhp-vehicle-media{height:145px}
    .bcrhp-vehicle-card .p-4{padding:16px!important}
    .bcrhp-vehicle-card h3{font-size:15px}
    .bcrhp-vehicle-card p{font-size:12px}

    .bcrhp-option-card{
        min-height:175px;
        padding:20px 16px;
    }

    .bcrhp-split,
    .bcrhp-location-layout{
        grid-template-columns:1fr;
    }
    .bcrhp-image-panel{height:310px}
    .bcrhp-location-card{padding:22px 20px}
    .bcrhp-map,
    .bcrhp-map iframe{
        min-height:340px;
    }

    .bcrhp-step-grid{grid-template-columns:1fr;gap:25px}
    .bcrhp-step,
    .bcrhp-step:first-child,
    .bcrhp-step:last-child{
        padding:0;
        border-right:0;
    }

    .bcrhp-review-card{min-height:205px}
    .bcrhp-review-card p{min-height:0}

    .bcrhp-bottom-info>.bcrhp-container{
        width:calc(100% - 32px);
    }
    .bcrhp-faq-layout>div+div{
        margin-top:58px;
        padding-top:56px;
    }
    .bcrhp-faq-list summary{
        padding:17px 18px;
        font-size:14px;
    }
    .bcrhp-faq-list p{
        padding:0 18px 18px;
        font-size:13px;
    }

    .bcrhp-guide-card{min-height:300px}
    .bcrhp-guide-card img{height:160px}
    .bcrhp-guide-card strong{
        padding:16px 17px 8px;
        font-size:15px;
    }
    .bcrhp-guide-card span{padding:8px 17px 17px}

    .ribik-simple-cta{padding:48px 16px}

    .ribik-simple-cta-image{
        width:175px;
        flex-basis:auto;
    }
    .ribik-simple-cta-image img{height:95px}
    .ribik-simple-cta-content h2{font-size:28px}
    .ribik-simple-cta-content p{font-size:13px}

    .bcrhp-final-cta .bcrhp-container{
        align-items:flex-start;
        flex-direction:column;
    }
}

/* ---------- Small phones ---------- */
@media (max-width:560px){
    .bcrhp-container{width:calc(100% - 24px)}
    .bcrhp-hero{min-height:535px}
    .bcrhp-hero-inner{min-height:470px}
    .bcrhp-hero-copy{padding-top:45px}
    .bcrhp-hero-copy h1{font-size:36px}
    .bcrhp-hero-copy p{font-size:14px}
    .bcrhp-eyebrow{font-size:9px}
    .bcrhp-search-position{margin-top:-92px}

    .bcrhp-trust-grid strong{font-size:13px}
    .bcrhp-trust-grid small{font-size:10px}

    .bcrhp-heading h2,
    .bcrhp-why-copy h2,
    .bcrhp-faq-layout h2,
    .bcrhp-guides h2{
        font-size:25px;
    }

    .bcrhp-vehicle-grid,
    .bcrhp-option-grid,
    .bcrhp-review-grid,
    .bcrhp-guide-grid{
        grid-template-columns:1fr;
    }
    .bcrhp-vehicle-media{height:190px}
    .bcrhp-option-card{min-height:155px}
    .bcrhp-review-card{min-height:0}
    .bcrhp-image-panel{height:240px}
    .bcrhp-location-card p{font-size:12px}
    .bcrhp-map,
    .bcrhp-map iframe{min-height:280px}

    .bcrhp-step{
        grid-template-columns:34px 42px 1fr;
        gap:10px;
    }
    .bcrhp-step>i{width:40px;height:40px}
    .bcrhp-step h3{font-size:14px}
    .bcrhp-step p{font-size:12px}

    .bcrhp-faq-list summary{font-size:13px}
    .bcrhp-faq-list p{font-size:12px}

    .ribik-simple-cta-content h2{font-size:25px}
}

/* Vehicle cards: as many columns as there are vehicles (up to 4), centred, never squeezed (2026-10-10). */
.bcrhp-vehicle-grid {
    grid-template-columns: repeat(auto-fit, minmax(260px, 320px)) !important;
    justify-content: center;
    gap: 24px !important;
}
@media (max-width: 600px) {
    .bcrhp-vehicle-grid { grid-template-columns: 1fr !important; }
}

/* ---------- Pickup location panel (2026-10-10) ---------- */
.bcrhp-locations { padding-top: 72px !important; padding-bottom: 72px !important; }
.bcrhp-location-layout {
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr) !important;
    border-radius: 22px !important;
    box-shadow: 0 1px 2px rgba(15,23,42,.04), 0 18px 40px -24px rgba(15,23,42,.3) !important;
}
.bcrhp-location-list { display: flex; padding: 0 !important; }
.bcrhp-pickup { display: flex; flex-direction: column; gap: 26px; width: 100%; padding: 36px 34px; }
.bcrhp-pickup-head { display: flex; align-items: center; gap: 14px; }
.bcrhp-pickup-icon {
    display: grid; place-items: center; flex-shrink: 0;
    width: 52px; height: 52px; border-radius: 16px;
    background: #fff6e0; color: #a65f00; font-size: 22px;
}
.bcrhp-pickup-head h3 { margin: 0 0 4px; font-size: 20px !important; }
.bcrhp-pickup-badge {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 4px 10px; border-radius: 999px;
    background: #e9f8f0; color: #17693f; font-size: 12px; font-weight: 600;
}
.bcrhp-pickup-rows { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--ds-line, #e6eaf0); }
.bcrhp-pickup-rows li {
    display: flex; align-items: flex-start; gap: 14px;
    padding: 14px 0; border-bottom: 1px solid var(--ds-line, #e6eaf0);
}
.bcrhp-pickup-rows i {
    display: grid; place-items: center; flex-shrink: 0;
    width: 36px; height: 36px; border-radius: 10px;
    background: #f6f8fb; color: #0b2545; font-size: 15px;
}
.bcrhp-pickup-rows span { display: block; color: #5b6676; font-size: 13px; font-weight: 500; }
.bcrhp-pickup-rows strong,
.bcrhp-pickup-rows a { display: block; color: #0f172a; font-size: 15px; font-weight: 600; line-height: 1.5; text-decoration: none; word-break: break-word; }
.bcrhp-pickup-rows a:hover { color: #a65f00; }
.bcrhp-pickup-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: auto; }
.bcrhp-pickup-btn {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 12px 20px; border-radius: 12px;
    background: #fda702; color: #111827 !important; font-size: 15px; font-weight: 600; text-decoration: none;
    transition: background .2s, transform .2s;
}
.bcrhp-pickup-btn:hover { background: #e69500; transform: translateY(-1px); }
.bcrhp-pickup-btn--ghost { background: #fff; border: 1px solid var(--ds-line, #e6eaf0); }
.bcrhp-pickup-btn--ghost:hover { background: #f6f8fb; }
.bcrhp-map, .bcrhp-map iframe { min-height: 460px !important; height: 100%; }
@media (max-width: 991px) {
    .bcrhp-location-layout { grid-template-columns: 1fr !important; }
    .bcrhp-map, .bcrhp-map iframe { min-height: 320px !important; }
}
@media (max-width: 600px) {
    .bcrhp-pickup { padding: 26px 20px; }
    .bcrhp-locations { padding-top: 48px !important; padding-bottom: 48px !important; }
}

/* Shorter home hero; search form sits closer under the heading (2026-10-10). */
.bcrhp-hero { min-height: 0 !important; }
.bcrhp-hero-inner { min-height: 0 !important; }
.bcrhp-hero-copy { padding: 48px 0 132px !important; }
.bcrhp-hero-copy h1 { margin-bottom: 14px !important; }
.bcrhp-hero-copy p { margin-bottom: 18px !important; }
@media (max-width: 991px) {
    .bcrhp-hero-copy { padding: 36px 0 124px !important; }
}

/* Phones: heading, then the search form, then the intro text and points (2026-10-10). */
.bcrhp-hero-mobile-info { display: none; }
@media (max-width: 767px) {
    .bcrhp-hero-copy .bcrhp-hero-intro,
    .bcrhp-hero-copy .bcrhp-hero-points--desktop { display: none !important; }
    .bcrhp-hero-copy { padding: 32px 0 110px !important; }
    .bcrhp-hero-copy h1 { margin-bottom: 0 !important; }
    .bcrhp-hero-mobile-info {
        display: block;
        position: relative; z-index: 2;
        padding-top: 22px; padding-bottom: 30px;
        color: rgba(255, 255, 255, .92);
    }
    .bcrhp-hero-mobile-info p { margin: 0 0 14px; font-size: 16px; line-height: 1.65; color: rgba(255, 255, 255, .92) !important; }
    .bcrhp-hero-mobile-info .bcrhp-hero-points { display: flex; flex-wrap: wrap; gap: 10px 18px; }
    .bcrhp-hero-mobile-info .bcrhp-hero-points span { display: inline-flex; align-items: center; gap: 8px; color: #fff; font-size: 14px; font-weight: 600; }
    .bcrhp-hero-mobile-info .bcrhp-hero-points i { color: #fda702; }
}

/* Home search card: no shadow, a little space below it (2026-10-10). */
.bcrhp-search-card { box-shadow: none !important; }
.bcrhp-search-position { margin-bottom: 0; padding-bottom: 28px; } /* hero photo shows below the form */

/* Rental options: 5 cards in one equal row (Airport card removed, 2026-10-12). */
.bcrhp-option-grid { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; }
@media (max-width: 1199px) { .bcrhp-option-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }
@media (max-width: 767px) { .bcrhp-option-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 480px) { .bcrhp-option-grid { grid-template-columns: 1fr !important; } }
