/*
Theme Name: BBS Corporate (Astra Child)
Theme URI: https://buanasamudra.com
Description: Child theme of Astra for PT Buana Bahari Samudra. Homepage reproduces the approved mockup and pulls content from ACF fields and the fleet/project/partner/service post types (via the BBS Core plugin). Built by PT Sinergi Informatika Persada.
Author: PT Sinergi Informatika Persada
Template: astra
Version: 1.0.0
Text Domain: bbs-child
*/

:root{
  --navy:#0C2E56; --navy2:#123C6E; --blue:#1E63B0; --accent:#F08A1D; --accent-d:#D9760C;
  --ink:#1A2836; --muted:#5A6B7B; --line:#E4EAF1; --bg:#F5F8FC; --white:#fff;
}
*{box-sizing:border-box}
body.bbs-home{font-family:'Inter',sans-serif;color:var(--ink);background:var(--white);line-height:1.6;font-size:16px;margin:0}
.bbs-home img{max-width:100%;height:auto}
.bbs-home h1,.bbs-home h2,.bbs-home h3,.bbs-home h4,.bbs-home .brandtext{font-family:'Poppins',sans-serif;line-height:1.2;margin:0}
.bbs-home a{text-decoration:none;color:inherit}
.bbs-wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.bbs-btn{display:inline-flex;align-items:center;gap:8px;font-family:'Poppins';font-weight:600;font-size:14px;padding:12px 22px;border-radius:8px;cursor:pointer;transition:.2s;border:2px solid transparent}
.bbs-btn-accent{background:var(--accent);color:#fff}
.bbs-btn-accent:hover{background:var(--accent-d);color:#fff}
.bbs-btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.bbs-btn-ghost:hover{background:#fff;color:var(--navy)}
.bbs-btn-navy{background:var(--navy);color:#fff}
.bbs-btn-navy:hover{background:var(--navy2);color:#fff}
.bbs-eyebrow{font-family:'Poppins';font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.bbs-sec{padding:78px 0}
.bbs-sec-head{max-width:720px;margin-bottom:44px}
.bbs-sec-head h2{font-size:34px;font-weight:700;color:var(--navy);margin:10px 0 14px}
.bbs-sec-head p{color:var(--muted);font-size:17px}

/* top bar + header */
.bbs-topbar{background:var(--navy);color:#cfe0f2;font-size:13px}
.bbs-topbar .bbs-wrap{display:flex;justify-content:space-between;align-items:center;height:40px}
.bbs-topbar a{color:#cfe0f2}
.bbs-topbar .r{display:flex;gap:18px;align-items:center}
.bbs-header{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 2px 14px rgba(12,46,86,.07)}
.bbs-header .bbs-wrap{display:flex;align-items:center;justify-content:space-between;height:74px}
.bbs-brand{display:flex;align-items:center;gap:12px}
.bbs-brand .txt{line-height:1.05}
.bbs-brand .txt b{display:block;font-family:'Poppins';font-weight:800;font-size:17px;color:var(--navy);letter-spacing:.01em}
.bbs-brand .txt s{display:block;text-decoration:none;font-family:'Poppins';font-weight:700;font-size:13px;color:var(--accent);letter-spacing:.28em}
.bbs-nav ul{display:flex;gap:26px;list-style:none;align-items:center;margin:0;padding:0}
.bbs-nav a{font-family:'Poppins';font-weight:500;font-size:14.5px;color:var(--ink)}
.bbs-nav a:hover{color:var(--blue)}
.bbs-nav-cta{display:flex;align-items:center;gap:14px}

/* hero */
.bbs-hero{position:relative;color:#fff;min-height:600px;display:flex;align-items:center;background-size:cover;background-position:center}
.bbs-hero-inner{max-width:660px;padding:60px 0}
.bbs-hero h1{font-size:48px;font-weight:800;margin:16px 0 18px}
.bbs-hero h1 span{color:var(--accent)}
.bbs-hero p{font-size:18px;color:#dbe6f2;margin-bottom:30px;max-width:560px}
.bbs-hero .cta{display:flex;gap:14px;flex-wrap:wrap}

/* stats */
.bbs-stats{background:var(--navy);color:#fff}
.bbs-stats .bbs-wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:38px 24px}
.bbs-stat{text-align:center;border-right:1px solid rgba(255,255,255,.12)}
.bbs-stat:last-child{border:none}
.bbs-stat b{font-family:'Poppins';font-weight:800;font-size:36px;color:var(--accent);display:block}
.bbs-stat small{color:#b7c8dc;font-size:13.5px}

/* about */
.bbs-about{background:var(--bg)}
.bbs-about .grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.bbs-about p{color:var(--muted);margin-bottom:16px}
.bbs-card{background:#fff;border-radius:14px;padding:32px;box-shadow:0 18px 44px rgba(12,46,86,.10);border-top:5px solid var(--accent)}
.bbs-card h3{color:var(--navy);font-size:20px;margin-bottom:8px}
.bbs-card .mi{padding:14px 0;border-bottom:1px solid var(--line)}
.bbs-card .mi:last-child{border:none;padding-bottom:0}
.bbs-card .mi b{font-family:'Poppins';color:var(--navy);font-size:15px;display:block;margin-bottom:4px}
.bbs-card .mi small{color:var(--muted);font-size:13.5px}

/* services */
.bbs-svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.bbs-svc{background:#fff;border:1px solid var(--line);border-radius:14px;padding:30px;transition:.25s}
.bbs-svc:hover{transform:translateY(-6px);box-shadow:0 20px 40px rgba(12,46,86,.13);border-color:transparent}
.bbs-svc .ic{width:56px;height:56px;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--navy));display:flex;align-items:center;justify-content:center;margin-bottom:18px;color:#fff;font-size:24px}
.bbs-svc h3{color:var(--navy);font-size:19px;margin-bottom:10px}
.bbs-svc p{color:var(--muted);font-size:14.5px;margin-bottom:16px}
.bbs-svc a{font-family:'Poppins';font-weight:600;font-size:13.5px;color:var(--accent-d)}

/* why */
.bbs-why{background:linear-gradient(135deg,var(--navy),#0a2545);color:#fff}
.bbs-why .bbs-sec-head h2{color:#fff}
.bbs-why .bbs-sec-head p{color:#b7c8dc}
.bbs-why .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.bbs-why .it{padding:26px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px}
.bbs-why .it .ic{width:46px;height:46px;border-radius:10px;background:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:16px;font-size:20px}
.bbs-why .it h4{font-size:16.5px;margin-bottom:8px}
.bbs-why .it p{color:#aebfd2;font-size:14px}

/* hse */
.bbs-hse .grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.bbs-hse .panel{background:linear-gradient(135deg,var(--accent),var(--accent-d));color:#fff;border-radius:16px;padding:44px}
.bbs-hse .panel .q{font-family:'Poppins';font-weight:700;font-size:26px;line-height:1.3}

/* partners */
.bbs-partners{background:var(--bg);text-align:center}
.bbs-plogos{display:flex;flex-wrap:wrap;gap:18px;justify-content:center;margin-top:8px}
.bbs-plogo{background:#fff;border:1px solid var(--line);border-radius:10px;height:84px;min-width:190px;display:flex;align-items:center;justify-content:center;padding:0 22px;color:var(--navy);font-family:'Poppins';font-weight:700;font-size:15px}
.bbs-plogo img{max-height:52px;width:auto}

/* cta band + footer */
.bbs-ctaband{background:var(--navy);color:#fff;text-align:center}
.bbs-ctaband h2{font-size:32px;color:#fff;margin-bottom:10px}
.bbs-ctaband p{color:#b7c8dc;margin-bottom:26px;font-size:17px}
.bbs-ctaband .cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.bbs-footer{background:#08213f;color:#a9bcd2;font-size:14px;padding:60px 0 0}
.bbs-fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:36px;padding-bottom:44px}
.bbs-footer h4{font-family:'Poppins';color:#fff;font-size:15px;margin-bottom:16px}
.bbs-footer ul{list-style:none;margin:0;padding:0}
.bbs-footer ul li{margin-bottom:9px}
.bbs-footer ul li a:hover{color:var(--accent)}
.bbs-fabout{margin-top:14px;color:#8fa4bd;font-size:13.5px;max-width:300px}
.bbs-fcontact div{display:flex;gap:10px;margin-bottom:12px;align-items:flex-start}
.bbs-fbottom{border-top:1px solid rgba(255,255,255,.1);padding:18px 0;text-align:center;font-size:13px;color:#7d93ac}

/* whatsapp float */
.bbs-wa{position:fixed;right:22px;bottom:22px;z-index:60;width:58px;height:58px;border-radius:50%;background:#25D366;box-shadow:0 8px 24px rgba(37,211,102,.5);display:flex;align-items:center;justify-content:center;color:#fff;font-size:28px}
.bbs-wa:hover{transform:scale(1.08);color:#fff}

@media(max-width:920px){
  .bbs-nav ul,.bbs-nav-cta .bbs-btn{display:none}
  .bbs-about .grid,.bbs-hse .grid,.bbs-why .grid,.bbs-fgrid{grid-template-columns:1fr;gap:30px}
  .bbs-svc-grid,.bbs-stats .bbs-wrap{grid-template-columns:1fr 1fr}
  .bbs-hero h1{font-size:34px}
  .bbs-sec{padding:54px 0}
}
@media(max-width:560px){
  .bbs-svc-grid,.bbs-stats .bbs-wrap{grid-template-columns:1fr}
  .bbs-stat{border-right:none;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:16px}
}

/* Button text-color overrides (beat .bbs-home a{color:inherit}) */
.bbs-home a.bbs-btn-accent,.bbs-home a.bbs-btn-navy,.bbs-home a.bbs-btn-ghost{color:#fff}
.bbs-home a.bbs-btn-accent:hover,.bbs-home a.bbs-btn-navy:hover{color:#fff}
.bbs-home a.bbs-btn-ghost:hover{color:var(--navy)}

/* Ensure white headings on dark sections (beat Astra's default heading color) */
.bbs-hero h1{color:#fff}
.bbs-hero h1 span{color:var(--accent)}
.bbs-why .it h4{color:#fff}
.bbs-ctaband h2{color:#fff}
.bbs-footer h4{color:#fff}

/* Real logo (header + footer) — high specificity to beat .bbs-home img{height:auto} */
.bbs-header .bbs-wrap{height:88px}
.bbs-home .bbs-logo-img{height:58px;width:auto;display:block}
.bbs-logo-chip{background:#fff;border-radius:10px;padding:8px 12px;display:inline-flex;align-items:center}
.bbs-home .bbs-logo-chip img{height:46px;width:auto;display:block}
@media(max-width:560px){.bbs-header .bbs-wrap{height:70px}.bbs-home .bbs-logo-img{height:42px}}
