/* Book a Demo page (book-demo.php): same light, grid + glow look as get-a-quote and contact */
main.bd-page{--bd-ink: #14213d; --bd-slate: #5b6477; --bd-blue: #0b75d6; --bd-violet: #7b61ff; --bd-rule: #dfe7f3; --bd-wash: #f4f7fe;
    --bd-grad: linear-gradient(100deg, #0b75d6, #3d6cf0 60%, #7b61ff); background: #fff; color: var(--bd-slate); overflow-x: hidden;}
main.bd-page .bd-wrap{max-width: 1280px; margin: 0 auto; padding: 0 40px;}

/* hero */
main.bd-page .bd-hero{position: relative; isolation: isolate; padding: 56px 0 96px; background: linear-gradient(180deg, #fbfcff 0%, #ffffff 60%, #f7faff 100%);}
main.bd-page .bd-bg{position: absolute; inset: 0; z-index: -1; pointer-events: none;
    background: radial-gradient(600px 460px at 18% 30%, rgba(11,117,214,.09), transparent 70%), radial-gradient(560px 420px at 88% 18%, rgba(123,97,255,.12), transparent 70%), radial-gradient(420px 320px at 50% 100%, rgba(11,117,214,.06), transparent 70%);}
main.bd-page .bd-bg::before{content: ''; position: absolute; inset: 0;
    background-image: linear-gradient(rgba(20,33,61,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(20,33,61,.045) 1px, transparent 1px); background-size: 44px 44px;
    -webkit-mask-image: radial-gradient(900px 560px at 50% 35%, #000 20%, transparent 75%); mask-image: radial-gradient(900px 560px at 50% 35%, #000 20%, transparent 75%);}
main.bd-page .bd-hero-grid{display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 56px; align-items: start;}
main.bd-page .bd-hero-copy{padding-top: 24px;}
main.bd-page .bd-eyebrow{display: inline-flex; align-items: center; gap: 10px; padding: 7px 16px 7px 12px; border: 1px solid var(--bd-rule); border-radius: 999px; background: rgba(255,255,255,.85); color: var(--bd-slate); font-size: 14px; font-weight: 600;}
main.bd-page .bd-eyebrow::before{content: ''; width: 8px; height: 8px; border-radius: 50%; background: linear-gradient(135deg, var(--bd-blue), var(--bd-violet)); box-shadow: 0 0 0 4px rgba(11,117,214,.12);}
main.bd-page .bd-title{margin: 22px 0 20px; color: var(--bd-ink); font-size: 50px; line-height: 1.1; font-weight: 700; letter-spacing: -0.02em; text-wrap: balance;}
main.bd-page .bd-title span{background: linear-gradient(100deg, var(--bd-blue) 10%, var(--bd-violet) 90%); -webkit-background-clip: text; background-clip: text; color: transparent;}
main.bd-page .bd-lead{margin: 0 0 18px; color: var(--bd-ink); font-size: 20px; line-height: 32px; font-weight: 500;}
main.bd-page .bd-text{margin: 0 0 16px; color: var(--bd-slate); font-size: 17px; line-height: 29px;}
main.bd-page .bd-text--strong{margin-top: 22px; padding-left: 16px; border-left: 3px solid; border-image: var(--bd-grad) 1; color: var(--bd-ink); font-weight: 600;}

/* form card (the form fields, ids and script are the original ones) */
main.bd-page .bd-form-card{position: relative; padding: 36px 36px 30px; border: 1px solid #fff; border-radius: 28px; background: rgba(255,255,255,.92);
    -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); box-shadow: 0 0 0 1px rgba(20,33,61,.06), 0 40px 80px -48px rgba(38,60,160,.55); scroll-margin-top: 100px;}
main.bd-page .bd-form-card::before{content: ''; position: absolute; top: -1px; left: 36px; right: 36px; height: 3px; border-radius: 0 0 4px 4px; background: var(--bd-grad);}
main.bd-page .bd-form-title{margin: 0 0 8px; color: var(--bd-ink); font-size: 26px; line-height: 1.3; font-weight: 700;}
main.bd-page .bd-form-intro{margin: 0 0 24px; font-size: 16px; line-height: 26px;}
main.bd-page .bd-form{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px;}
main.bd-page .bd-field{margin-bottom: 14px; min-width: 0;}
main.bd-page .bd-field--full{grid-column: 1 / -1;}
main.bd-page .bd-field label{display: block; margin-bottom: 6px; color: var(--bd-ink); font-size: 13.5px; font-weight: 600;}
main.bd-page .bd-req{margin-left: 2px; color: #e5484d;}
main.bd-page .bd-form .input-text{display: block; width: 100%; height: 52px; margin: 0; padding: 0 16px; border: 1px solid var(--bd-rule); border-radius: 14px; outline: none; background: #f9fbff;
    color: var(--bd-ink); font-size: 15px; transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;}
main.bd-page .bd-form select.input-text{padding-right: 40px; -webkit-appearance: none; appearance: none; cursor: pointer;
    background: #f9fbff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b6477' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 16px center / 16px no-repeat;}
main.bd-page .bd-form .input-text::placeholder{color: #9aa3b5;}
main.bd-page .bd-form .input-text:focus{border-color: var(--bd-blue); background-color: #fff; box-shadow: 0 0 0 4px rgba(11,117,214,.12);}
main.bd-page .bd-form .CommonErroMsg{margin-top: 6px; font-size: 13px; font-weight: 600;}
main.bd-page .bd-submit{display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; height: 58px; margin-top: 6px; border: 0; border-radius: 16px; background: var(--bd-grad);
    color: #fff; font-size: 17px; font-weight: 700; box-shadow: 0 18px 36px -18px rgba(38,60,220,.8); transition: transform .2s ease, box-shadow .2s ease;}
main.bd-page .bd-submit::after{content: '\2192'; font-size: 18px;}
main.bd-page .bd-submit:hover{transform: translateY(-2px); box-shadow: 0 22px 40px -18px rgba(38,60,220,.9);}

/* sections */
main.bd-page .bd-section{padding: 96px 0;}
main.bd-page .bd-head{max-width: 760px; margin: 0 auto 48px; text-align: center;}
main.bd-page .bd-kicker{display: inline-block; margin-bottom: 14px; color: var(--bd-blue); font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;}
main.bd-page .bd-h2{margin: 0 0 16px; color: var(--bd-ink); font-size: 40px; line-height: 1.18; font-weight: 700; letter-spacing: -0.015em; text-wrap: balance;}
main.bd-page .bd-sub{margin: 0; font-size: 18px; line-height: 30px;}
main.bd-page .bd-note{margin: 22px 0 0; color: var(--bd-ink); font-size: 16px; font-weight: 600;}
main.bd-page .bd-icon{display: inline-flex; flex: none; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 16px; background: var(--bd-grad); color: #fff; box-shadow: 0 14px 28px -14px rgba(11,117,214,.8);}
main.bd-page .bd-icon svg{width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round;}

/* modules */
main.bd-page .bd-discover{background: var(--bd-wash);}
main.bd-page .bd-modules{display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px;}
main.bd-page .bd-module{padding: 30px 28px; border: 1px solid var(--bd-rule); border-radius: 22px; background: #fff; box-shadow: 0 24px 50px -40px rgba(38,60,160,.5); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;}
main.bd-page .bd-module:hover{transform: translateY(-4px); border-color: rgba(11,117,214,.25); box-shadow: 0 30px 60px -36px rgba(38,60,160,.55);}
main.bd-page .bd-module h3{margin: 20px 0 14px; color: var(--bd-ink); font-size: 20px; line-height: 1.3; font-weight: 700;}
main.bd-page .bd-module ul{margin: 0; padding: 0; list-style: none;}
main.bd-page .bd-module li{position: relative; margin-bottom: 9px; padding-left: 22px; font-size: 15.5px; line-height: 1.55;}
main.bd-page .bd-module li:last-child{margin-bottom: 0;}
main.bd-page .bd-module li::before{content: ''; position: absolute; left: 2px; top: .62em; width: 7px; height: 7px; border-radius: 50%; background: var(--bd-grad);}

/* why schedule */
main.bd-page .bd-why-grid{display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; align-items: center;}
main.bd-page .bd-why-copy .bd-sub{max-width: 540px;}
main.bd-page .bd-why-card{padding: 32px 34px; border: 1px solid var(--bd-rule); border-radius: 24px; background: #fff; box-shadow: 0 30px 60px -44px rgba(38,60,160,.55);}
main.bd-page .bd-why-card .bd-note{margin: 0 0 10px;}
main.bd-page .bd-checks{margin: 0; padding: 0; list-style: none;}
main.bd-page .bd-checks li{display: flex; align-items: center; gap: 14px; padding: 13px 0; color: var(--bd-ink); font-size: 17px; font-weight: 600; line-height: 1.4;}
main.bd-page .bd-checks li + li{border-top: 1px solid #e9eef7;}
main.bd-page .bd-checks li::before{content: ''; flex: 0 0 32px; height: 32px; border-radius: 10px; box-shadow: 0 10px 20px -10px rgba(11,117,214,.7);
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 17px no-repeat, var(--bd-grad);}

/* who can benefit */
main.bd-page .bd-who{background: var(--bd-wash);}
main.bd-page .bd-industries{display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 0; padding: 0; list-style: none;}
main.bd-page .bd-industries li{display: flex; align-items: center; gap: 16px; padding: 20px 22px; border: 1px solid var(--bd-rule); border-radius: 18px; background: #fff; color: var(--bd-ink); font-size: 17px; font-weight: 600; line-height: 1.35;
    box-shadow: 0 20px 44px -38px rgba(38,60,160,.5);}
main.bd-page .bd-industries .bd-icon{width: 46px; height: 46px; border-radius: 14px;}
main.bd-page .bd-industries .bd-icon svg{width: 22px; height: 22px;}

/* steps */
main.bd-page .bd-steps{position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 0; list-style: none;}
main.bd-page .bd-steps::before{content: ''; position: absolute; top: 32px; left: 12%; right: 12%; height: 2px; background: linear-gradient(90deg, rgba(11,117,214,.35), rgba(123,97,255,.35));}
main.bd-page .bd-step{position: relative; text-align: center;}
main.bd-page .bd-step-num{position: relative; display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; margin-bottom: 18px; border-radius: 50%; background: #fff; border: 1px solid var(--bd-rule);
    color: var(--bd-blue); font-size: 20px; font-weight: 800; box-shadow: 0 16px 34px -20px rgba(38,60,160,.6);}
main.bd-page .bd-step p{max-width: 240px; margin: 0 auto; color: var(--bd-ink); font-size: 16.5px; line-height: 1.55; font-weight: 500;}

/* testimonials (the original markup and slider; styles from sass/semsto-form.css) */
main.bd-page .bd-reviews{padding-top: 0;}
main.bd-page .bd-reviews .testimonial-sec{padding: 48px 44px 64px; border: 1px solid var(--bd-rule); border-radius: 28px; background: linear-gradient(160deg, #f7f9ff, #f3f0ff);}
main.bd-page .bd-reviews .testimonial-sec .story-desc .title{color: var(--bd-ink); font-weight: 700;}

/* bottom call to action */
main.bd-page .bd-cta{padding: 0 0 96px;}
main.bd-page .bd-cta-inner{display: flex; align-items: center; justify-content: space-between; gap: 32px; padding-top: 56px; padding-bottom: 56px; border-radius: 28px; background: var(--bd-grad); box-shadow: 0 40px 80px -48px rgba(38,60,220,.8);}
main.bd-page .bd-cta-inner{max-width: 1200px; padding-left: 56px; padding-right: 56px;}
main.bd-page .bd-cta h2{margin: 0 0 10px; color: #fff; font-size: 32px; line-height: 1.25; font-weight: 700;}
main.bd-page .bd-cta p{max-width: 640px; margin: 0; color: rgba(255,255,255,.88); font-size: 17px; line-height: 28px;}
main.bd-page .bd-btn{display: inline-flex; flex: none; align-items: center; gap: 10px; padding: 16px 28px; border-radius: 14px; background: #fff; color: var(--bd-blue); font-size: 16px; font-weight: 700; text-decoration: none; transition: transform .2s ease;}
main.bd-page .bd-btn::after{content: '\2192';}
main.bd-page .bd-btn:hover{transform: translateY(-2px); color: var(--bd-blue);}

@media (max-width: 1199px){
    main.bd-page .bd-title{font-size: 44px;}
    main.bd-page .bd-hero-grid{gap: 40px;}
}
@media (max-width: 991px){
    main.bd-page .bd-hero{padding: 40px 0 72px;}
    main.bd-page .bd-hero-grid, main.bd-page .bd-why-grid{grid-template-columns: minmax(0, 1fr); gap: 40px;}
    main.bd-page .bd-hero-copy{padding-top: 0;}
    main.bd-page .bd-title{font-size: 38px;}
    main.bd-page .bd-section{padding: 72px 0;}
    main.bd-page .bd-h2{font-size: 32px;}
    main.bd-page .bd-modules, main.bd-page .bd-industries{grid-template-columns: repeat(2, minmax(0, 1fr));}
    main.bd-page .bd-steps{grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 36px;}
    main.bd-page .bd-steps::before{display: none;}
    main.bd-page .bd-cta-inner{flex-direction: column; align-items: flex-start;}
}
@media (max-width: 575px){
    main.bd-page .bd-wrap{padding: 0 16px;}
    main.bd-page .bd-hero{padding: 28px 0 56px;}
    main.bd-page .bd-title{font-size: 32px; margin: 18px 0 14px;}
    main.bd-page .bd-lead{font-size: 17px; line-height: 28px;}
    main.bd-page .bd-text{font-size: 16px; line-height: 27px;}
    main.bd-page .bd-form-card{padding: 26px 18px 22px; border-radius: 22px;}
    main.bd-page .bd-form-card::before{left: 18px; right: 18px;}
    main.bd-page .bd-form-title{font-size: 22px;}
    main.bd-page .bd-form{grid-template-columns: minmax(0, 1fr);}
    main.bd-page .bd-section{padding: 56px 0;}
    main.bd-page .bd-head{margin-bottom: 32px;}
    main.bd-page .bd-h2{font-size: 27px;}
    main.bd-page .bd-sub{font-size: 16px; line-height: 27px;}
    main.bd-page .bd-modules, main.bd-page .bd-industries, main.bd-page .bd-steps{grid-template-columns: minmax(0, 1fr);}
    main.bd-page .bd-module{padding: 24px 20px;}
    main.bd-page .bd-why-card{padding: 22px 18px;}
    main.bd-page .bd-checks li{font-size: 16px;}
    main.bd-page .bd-reviews .testimonial-sec{padding: 32px 18px 56px; border-radius: 22px;}
    main.bd-page .bd-cta{padding-bottom: 56px;}
    main.bd-page .bd-cta-inner{margin: 0 16px; padding: 36px 22px; border-radius: 22px;}
    main.bd-page .bd-cta h2{font-size: 25px;}
}
@media (prefers-reduced-motion: reduce){
    main.bd-page .bd-module, main.bd-page .bd-submit, main.bd-page .bd-btn{transition: none;}
}
