/* ==========================================================================
   BDS homepage sections (front page only). Builds on Kinetic's tokens +
   hero/tour layer (provided by the parent theme).
   ========================================================================== */

.bds-section{padding-block:clamp(46px,7vw,78px)}
.section-head{margin-bottom:28px}.section-head p{color:var(--k-ink-soft);max-width:60ch}
.section-head.center{text-align:center}.section-head.center p{margin-inline:auto}
.muted{color:var(--k-ink-soft)}
.bds-section .center,p.center{text-align:center}
.bds-eyebrow-y{color:var(--k-yellow-deep)}
.bds-hero-ghost{color:#fff;border-color:rgba(255,255,255,.4)}

/* offer ribbon */
.bds-ribbon{background:linear-gradient(90deg,var(--k-yellow),var(--k-yellow-deep));color:#0b0d12;font:700 13.5px/1.35 var(--k-font);display:flex;gap:12px;align-items:center;justify-content:center;padding:9px 16px;text-align:center}
.bds-ribbon a{color:#0b0d12}.bds-ribbon button{margin-left:4px;background:rgba(0,0,0,.15);border:0;border-radius:99px;width:22px;height:22px;cursor:pointer;line-height:1}

/* info cards (overlap the hero) */
.bds-infocards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:-46px;position:relative;z-index:3}
.bds-ic{background:var(--k-primary);color:#fff;border-radius:var(--k-radius);padding:26px 22px;text-align:center;box-shadow:var(--k-shadow-lift);transition:transform .2s var(--k-ease)}
.bds-ic:hover{transform:translateY(-5px)}
.bds-ic .ic-ico{width:54px;height:54px;border-radius:50%;background:var(--k-yellow);color:#0b0d12;display:grid;place-items:center;font-size:24px;margin:0 auto 14px}
.bds-ic h3{color:#fff;font-size:1.25rem}.bds-ic p{color:#cfd8ff;font-size:14.5px;margin:0}
@media(max-width:820px){.bds-infocards{grid-template-columns:1fr;margin-top:-30px}}

/* counters */
.bds-counters{background:var(--k-bg-2);border-block:1px solid var(--k-border)}
.bds-counters .grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding-block:34px}
.bds-counters .st{text-align:center}
.bds-counters .n{font:400 clamp(1.7rem,4.4vw,2.7rem)/1 var(--k-display);color:var(--k-primary)}
.bds-counters .l{font-size:12.5px;color:var(--k-ink-soft);letter-spacing:.04em;text-transform:uppercase}
@media(max-width:760px){.bds-counters .grid{grid-template-columns:repeat(2,1fr);gap:22px 8px}}

/* services */
.bds-services{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.bds-svc{background:var(--k-surface);border:1px solid var(--k-border);border-radius:var(--k-radius);padding:22px;box-shadow:var(--k-shadow);transition:transform .2s var(--k-ease),box-shadow .2s var(--k-ease);text-decoration:none;color:inherit;display:block}
.bds-svc:hover{transform:translateY(-6px);box-shadow:var(--k-shadow-lift)}
.bds-svc .ico{font-size:30px;margin-bottom:12px}
.bds-svc h3{font-family:var(--k-font);font-weight:800;text-transform:none;letter-spacing:0;font-size:1.15rem;margin:0 0 .35em}
.bds-svc p{color:var(--k-ink-soft);font-size:14.5px;margin:0}.bds-svc .go{margin-top:12px;color:var(--k-primary);font-weight:700;font-size:13.5px}
@media(max-width:820px){.bds-services{grid-template-columns:1fr}}

/* journey — draws on scroll (parent adds .is-in on .k-reveal) */
.bds-road{position:relative;margin-top:18px}
.bds-road svg{width:100%;height:auto;overflow:visible}
.bds-journey .rpath,.bds-journey .rpath-fill{fill:none;stroke-dasharray:1;stroke-dashoffset:1}
.bds-journey .rpath{stroke:var(--k-ink-soft);stroke-width:3;opacity:.3;transition:stroke-dashoffset 1.8s var(--k-ease)}
.bds-journey .rpath-fill{stroke:var(--k-orange);stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset 2s var(--k-ease)}
.bds-journey.is-in .rpath,.bds-journey.is-in .rpath-fill{stroke-dashoffset:0}
.bds-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:26px}
.bds-steps .step{text-align:center}
.bds-steps .num{width:46px;height:46px;border-radius:50%;background:var(--k-primary);color:#fff;font:400 22px/46px var(--k-display);margin:0 auto 10px}
.bds-steps h3{font-family:var(--k-font);font-weight:800;text-transform:none;letter-spacing:0;font-size:1.05rem;margin:0 0 .3em}
.bds-steps p{color:var(--k-ink-soft);font-size:14px;margin:0}
@media(max-width:760px){.bds-steps{grid-template-columns:1fr 1fr}}

/* likhit checkpoint */
.bds-likhit{background:var(--k-primary);color:#fff;border-radius:var(--k-radius);padding:clamp(28px,5vw,48px)}
.bds-likhit h2{color:#fff}.bds-likhit p.sub{color:#cfd8ff;max-width:52ch}
.bds-q{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:18px;margin:14px 0}
.bds-q .qq{font-weight:700;margin-bottom:12px}.bds-q .opts{display:grid;gap:8px}
.bds-opt{text-align:left;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:10px;padding:11px 14px;cursor:pointer;font:600 15px/1.3 var(--k-font);transition:background .15s}
.bds-opt:hover{background:rgba(255,255,255,.16)}.bds-opt.correct{background:#1f9d55;border-color:#1f9d55}.bds-opt.wrong{background:#d64550;border-color:#d64550}
.bds-q .res{margin-top:8px;font-weight:700;min-height:1.2em}

/* tour teaser */
.bds-tourcta{position:relative;border-radius:var(--k-radius);overflow:hidden;padding:clamp(32px,6vw,58px);color:#fff;background:radial-gradient(120% 130% at 15% 10%,rgba(255,122,0,.32),transparent 55%),linear-gradient(120deg,#0a1b6e,#1338be 60%,#3350c9)}
.bds-tourcta h2{color:#fff}.bds-tourcta p{color:#dfe4f5;max-width:54ch}
.bds-minis{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}.bds-minis span{font:600 12.5px/1 var(--k-font);background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);border-radius:99px;padding:8px 13px}

/* why + form */
.bds-why{background:var(--k-ink);color:#e7eaf2}
.bds-why .grid{display:grid;grid-template-columns:1.2fr .9fr;gap:34px;align-items:start}
.bds-why h2{color:#fff}.bds-why .muted{color:#aeb6c7}
.bds-why .pt{display:flex;gap:14px;margin:16px 0}.bds-why .pt .i{flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;font-size:18px}
.bds-why .pt b{color:#fff}.bds-why .pt p{color:#aeb6c7;font-size:14.5px;margin:.2em 0 0}
.bds-form{background:var(--k-surface);color:var(--k-ink);border-radius:var(--k-radius);padding:24px;box-shadow:var(--k-shadow-lift);border-top:4px solid var(--k-yellow)}
.bds-form h3{text-transform:none;font-family:var(--k-font);font-weight:800;letter-spacing:0;margin:0 0 .4em;font-size:1.3rem}
.bds-form label{font-weight:700;font-size:14px;display:block;margin:10px 0 6px}
@media(max-width:860px){.bds-why .grid{grid-template-columns:1fr}}

/* reviews (fallback when [bds_reviews] absent) */
.bds-rev-top{display:flex;gap:40px;justify-content:center;flex-wrap:wrap}
.bds-rev-score{text-align:center;text-decoration:none;color:inherit}
.bds-rev-score .stars{color:var(--k-yellow-deep);font-size:22px;letter-spacing:2px}
.bds-rev-score .big{font:400 20px/1.2 var(--k-display);margin-top:6px}.bds-rev-score .l{color:var(--k-ink-soft);font-size:13px}

/* branches */
.bds-branches{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.bds-branch{background:var(--k-surface);border:1px solid var(--k-border);border-radius:var(--k-radius);overflow:hidden;box-shadow:var(--k-shadow);transition:transform .2s var(--k-ease)}
.bds-branch:hover{transform:translateY(-5px)}
.bds-branch .map{aspect-ratio:16/9;background:linear-gradient(135deg,#1338be,#3a5bff);position:relative}
.bds-branch .map::after{content:"📍";position:absolute;inset:0;display:grid;place-items:center;font-size:34px}
.bds-branch .b{padding:18px}.bds-branch h3{font-family:var(--k-font);font-weight:800;text-transform:none;letter-spacing:0;font-size:1.1rem;margin:0 0 12px}
.bds-branch .acts{display:flex;gap:8px}.bds-branch .acts a{font:700 13px/1 var(--k-font);text-decoration:none;padding:9px 12px;border-radius:9px}
.bds-branch .acts .c{background:var(--k-primary);color:#fff}.bds-branch .acts .dir{background:var(--k-bg-2);color:var(--k-ink)}
@media(max-width:820px){.bds-branches{grid-template-columns:1fr}}

/* app install */
.bds-app{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;background:var(--k-bg-2);border:1px solid var(--k-border);border-radius:var(--k-radius);padding:clamp(26px,4vw,40px)}
.bds-app h2{margin:.2em 0}.bds-app .muted{max-width:46ch}
.bds-qr{width:120px;height:120px;background:#fff;border-radius:12px;padding:8px;box-shadow:var(--k-shadow)}
@media(max-width:640px){.bds-app{grid-template-columns:1fr;text-align:center}.bds-qr{margin:0 auto}}

/* final CTA */
.bds-finalcta{position:relative;color:#fff;text-align:center;padding:clamp(50px,9vw,110px) 0;overflow:hidden;background:linear-gradient(180deg,#1a2a86,#2b2440 60%,#141020)}
.bds-finalcta .glow{position:absolute;inset:auto 0 -30% 0;height:60%;background:radial-gradient(60% 100% at 50% 100%,rgba(255,122,0,.4),transparent 70%)}
.bds-finalcta .n{font:400 clamp(2.2rem,7vw,4rem)/1 var(--k-display);color:var(--k-yellow)}
.bds-finalcta .n a{color:var(--k-yellow);text-decoration:none}
.bds-finalcta .muted{color:#dfe4f5;margin:14px 0 22px}

@media (prefers-reduced-motion: reduce){
	.bds-ic:hover,.bds-svc:hover,.bds-branch:hover{transform:none}
	.bds-journey .rpath,.bds-journey .rpath-fill{stroke-dashoffset:0 !important;transition:none}
}
