.bw-content{
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
    gap: 50px;
    width: min(1160px, calc(100% - 40px));
    margin: 0 auto;
    padding: 10px 0 30px;
}

.psm-wrapper{

    width:100%;

    max-width:700px;

    margin:20px auto;

    padding:40px;

    background:#ffffff;

    border-radius:10px;

    box-shadow:0 0 20px rgba(0,0,0,.08);

}

.psm-wrapper h2{

    font-size:30px;

    font-weight:700;

    margin-bottom:15px;

}

.psm-wrapper p{

    color:#666;

    margin-bottom:25px;

}

#psm-model{

    width:100%;

    height:55px;

    padding:0 15px;

    border:1px solid #ddd;

    border-radius:6px;

    font-size:16px;

    outline:none;

    transition:.3s;

}

#psm-model:focus{

    border-color:#0d6efd;

    box-shadow:0 0 8px rgba(13,110,253,.25);

}

#psm-download-btn{

    margin-top:20px;

    background:#0d6efd;

    color:#fff;

    border:0;

    padding:15px 40px;

    border-radius:6px;

    cursor:pointer;

    font-size:18px;

}

#psm-download-btn:hover{

    background:#0b5ed7;
    color: #ffffff;


}

.psm-modal{

display:none;

position:fixed;

left:0;

top:0;

width:100%;

height:100%;

background:rgba(0,0,0,.6);

z-index:999999;

}


.psm-close{

position:absolute;

right:25px;

top:15px;

font-size:35px;

cursor:pointer;

}

.psm-grid{

display:grid;

grid-template-columns:60% 40%;

gap:25px;

margin-top:25px;

}

.psm-terminal{

background:#0f1720;

color:#fff;

border-radius:10px;

overflow:hidden;

}

.terminal-header{

background:#202733;

padding:12px;

display:flex;

align-items:center;

}

.dot{

width:12px;

height:12px;

border-radius:50%;

margin-right:8px;

display:inline-block;

}

.red{

background:#ff5f57;

}

.yellow{

background:#febc2e;

}

.green{

background:#28c840;

}

.terminal-title{

margin-left:15px;

font-size:14px;

}

#terminalLog{

padding:20px;

min-height:320px;

color:#ddd;

font-size:15px;

}

.psm-status h3{

margin-bottom:20px;

}


.status-icon{

font-size:28px;

margin-right:15px;

color:#1f8fff;

}

    .bw-help-card {
      display: grid;
      place-items: center;
      min-height: 154px;
      border-radius: 8px;
      background: lightgray;
    }

    .bw-help-card__paper {
      position: relative;
      width: 142px;
      height: 82px;
      border: 2px solid #8fb9df;
      border-radius: 5px;
      background: #fff
    }

    .bw-help-card__paper:before {
      position: absolute;
      top: -18px;
      left: 28px;
      width: 86px;
      height: 18px;
      border-radius: 4px 4px 0 0;
      background: var(--brand);
      content: "model";
      color: #fff;
      text-align: center;
      font-size: 10px;
      font-weight: 800;
      line-height: 18px
    }

    .bw-help-card__label {
      position: absolute;
      right: -24px;
      top: 31px;
      border: 1px solid #9ca3af;
      background: #fff;
      padding: 7px 10px;
      font-size: 11px;
      font-weight: 800
    }

.psm-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:9999;overflow-y:auto;padding:20px 0;}
.psm-modal-content{background:#fff;width:1100px;max-width:95%;margin:40px auto;padding:20px;border-radius:10px;position:relative}
.psm-close{position:absolute;right:20px;top:15px;font-size:34px;cursor:pointer}
.psm-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}
.psm-terminal{background:#101820;color:#fff;border-radius:8px;overflow:hidden}
.terminal-header{background:#222;padding:10px}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px}
.red{background:#ff5f57}.yellow{background:#febc2e}.green{background:#28c840}
#terminalLog{padding:20px;min-height:320px;white-space:pre-wrap;font-family:monospace; color: black;}
.status-card{
    display:flex;
    align-items:center;
    gap:15px;
    padding:10px;
    margin-bottom:10px;
    border:2px solid #d9d9d9;
    border-radius:8px;
    transition:.4s;
}
.status-copy{color:#666}
.psm-error-panel{display:none;text-align:center;padding:0 40px 40px 40px;}
.psm-error-panel h2{color:#c00}
.psm-btn{display:inline-block;padding:12px 24px;border-radius:6px;text-decoration:none;color:#fff;margin:10px}
.chat-btn{background:#0d6efd; color:white}.call-btn{background:#198754}

/* Error Layout */

.psm-error-grid{

    display:grid;

    grid-template-columns:60% 40%;

    gap:30px;

    align-items:flex-start;

}

.psm-error-left{

    text-align:left;

}

.error-code{

    margin:15px 0;

    color:#666;

}

.error-message{

    color:#555;

    line-height:1.7;

    margin-bottom:25px;

}

.psm-buttons{

    display:flex;

    gap:15px;

    margin-top:25px;

}

/* Error Cards */

.status-card.error{

    border:2px solid #dc3545;

    background:#fff5f5;

}

.status-card.error .status-icon{

    width:38px;

    height:38px;

    border-radius:50%;

    background:#dc3545;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:18px;

    font-weight:bold;

}

.status-card.error .status-copy{

    color:#dc3545;

    font-weight:600;

}
.status-icon{
    width:40px;
    height:40px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:bold;
    font-size:18px;
}
.status-card.running{

    border-color:#2f80ed;

    background:#eef6ff;

}

.status-card.running .status-icon{

    background:#f71010;

    color:#fff;

    animation:pulse 1s infinite;

}

@keyframes pulse{

0%{
transform:scale(1);
}

50%{
transform:scale(1.08);
}

100%{
transform:scale(1);
}

}
.status-card.error{

    border-color:#dc3545;

    background:#fff5f5;

}

.status-card.error .status-icon{

    background:#dc3545;

    color:#fff;

}

.status-card.error .status-copy{

    color:#dc3545;

    font-weight:600;

}

.psm-error-message{

    display:block;

    margin-top:8px;

    color:#dc3545;

    font-size:14px;

    font-weight:500;

    min-height:20px;

}

#psm-model.error{

    border:1px solid #dc3545;

    box-shadow:0 0 6px rgba(220,53,69,.25);

}

.psm-error-image{

    text-align:center;

    margin-bottom:25px;
    width: 250px;
    margin: auto;

}

.psm-error-image img{

    width:200px;

}

.psm-warning-box{

    display:flex;

    align-items:flex-start;

    gap:15px;

    padding:15px;

    margin-top:20px;

    border:1px solid #f4b7b7;

    background:#fff8f8;

    border-radius:8px;

}

.warning-icon{

    width:28px;

    height:28px;

    border-radius:50%;

    background:#dc3545;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    font-weight:bold;

    flex-shrink:0;

}

.psm-warning-box p{

    margin:0;

    font-size:14px;

    line-height:1.6;

}

.psm-error-left h2{

    font-size:30px;

    font-weight:700;

    color:#222;

    margin-bottom:12px;

}

.error-code{

    font-size:18px;

    margin-bottom:20px;

}

.psm-buttons{

    display:flex;

    gap:15px;

    margin-top:25px;

}

.psm-buttons:hover{
    color: white;
   
}

.bw-error-visual svg {
    width: 230px;
    max-width: 100%;
    height: 118px;
}
.bw-error-cross {
    stroke: #d71920;
    stroke-width: 4;
    stroke-linecap: round;
}
.call-btn a:hover{
    color: white !important;
}
.chat-btn a:hover{
    color: white !important;
}
/* ==========================================
   Tablet
========================================== */

@media (max-width:1024px){

    .psm-wrapper{

        max-width:90%;
        padding:30px;

    }

    .psm-wrapper h2{

        font-size:34px;

    }

    .psm-modal-content{

        width:95%;
        padding:25px;

    }

    .psm-grid{

        grid-template-columns:1fr;
        gap:25px;

    }

    .psm-error-grid{

        grid-template-columns:1fr;
        gap:30px;

    }

    .psm-terminal{

        order:1;

    }

    .psm-status{

        order:2;

    }

}
/* ==========================================
   Mobile
========================================== */

@media (max-width:768px){

    .psm-wrapper{

        max-width:95%;
        margin:30px auto;
        padding:25px 20px;

    }

    .psm-wrapper h2{

        font-size:28px;
        line-height:1.3;
        text-align:center;

    }

    .psm-wrapper p{

        text-align:center;
        font-size:15px;

    }

    #psm-model{

        height:50px;
        font-size:15px;

    }

    #psm-download-btn{

        width:100%;
        font-size:16px;
        padding:15px;

    }

    .psm-modal{

        padding:10px;

    }

    .psm-modal-content{

        width:100%;
        max-width:100%;
        margin:15px auto;
        padding:20px;
        border-radius:8px;

        max-height:90vh;
        overflow-y:auto;

    }

    .psm-grid{

        grid-template-columns:1fr;
        gap:20px;

    }

    .psm-error-grid{

        grid-template-columns:1fr;
        gap:20px;

    }

    .psm-terminal{

        min-height:auto;

    }

    #terminalLog{

        min-height:220px;
        font-size:13px;
        padding:15px;

    }

    .psm-status h3{

        text-align:center;

    }

    .status-card{

        padding:12px;
        gap:10px;

    }

    .status-icon{

        width:34px;
        height:34px;
        font-size:16px;

    }

    .psm-error-left{

        text-align:center;

    }

    .psm-error-left h2{

        font-size:26px;

    }

    .error-code{

        font-size:16px;

    }

    .psm-warning-box{

        flex-direction:column;
        text-align:left;

    }

    .psm-buttons{

        flex-direction:column;
        gap:12px;

    }

    .psm-btn{

        width:100%;
        text-align:center;
        margin:0;

    }

}
/* ==========================================
   Small Mobile
========================================== */

@media (max-width:480px){

    .psm-wrapper{

        padding:18px;

    }

    .psm-wrapper h2{

        font-size:24px;

    }

    .psm-wrapper p{

        font-size:14px;

    }

    #psm-model{

        height:48px;
        font-size:14px;

    }

    #psm-download-btn{

        font-size:15px;

    }

    .psm-close{

        right:15px;
        top:10px;
        font-size:28px;

    }

    .terminal-header{

        font-size:12px;

    }

    #terminalLog{

        min-height:180px;
        font-size:12px;

    }

    .psm-error-image{

        width:180px;

    }

    .bw-error-visual svg{

        width:170px;

    }

    .psm-error-left h2{

        font-size:22px;

    }

    .error-code{

        font-size:15px;

    }

}


    .bw-hero {
      background: linear-gradient(180deg, rgba(4, 74, 238, 0.92), rgba(51, 65, 85, 0.84));
      color: #fff;
    }

    .bw-hero__inner {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(400px, 560px);
      align-items: center;
      gap: 42px;
      width: min(1220px, calc(100% - 40px));
      min-height: 250px;
      margin: 0 auto;
      padding: 24px 0
    }

    .bw-hero__copy {
      max-width: 500px;
      padding: 6px 0 6px 8px
    }

    .bw-hero h1 {
      max-width: 420px;
      margin: 0 0 14px;
      font-size: 30px;
      line-height: 1.18;
      font-weight: 700;
      color: white;
    }

    .bw-hero ul {
      margin: 0;
      padding-left: 18px;
      font-size: 14px;
      font-weight: 600;
      line-height: 1.65
    }

    .bw-hero li+li {
      margin-top: 6px
    }

    .bw-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 42px;
      margin-top: 20px;
      border-radius: 5px;
      padding: 10px 25px;
      background: #0f5f9f;
      color: #ffffff;
      border: 1px solid rgba(255, 255, 255, .42);
      font-size: 13px;
      font-weight: 800;
      box-shadow: 0 10px 18px rgba(0, 0, 0, .16)
    }
    .bw-button:hover{
        color: orange;
    }
    .bw-printer-wrap {
      position: relative;
      display: grid;
      place-items: center;
      min-height: 200px;
      border-radius: 14px;
      background: transparent;
      box-shadow: none
    }

    .bw-printer-wrap:before {
      position: absolute;
      right: 5%;
      bottom: 14px;
      left: 5%;
      height: 36px;
      border-radius: 50%;
      background: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, .46) 18%, rgba(8, 38, 68, .22) 52%, rgba(255, 255, 255, .42) 82%, rgba(255, 255, 255, 0));
      filter: blur(12px);
      content: ""
    }
    
    .bw-printer {
      position: relative;
      z-index: 1;
      width: min(400px, 100%);
      filter: drop-shadow(0 24px 30px rgba(0, 0, 0, .24))
    }

    /* ================================
   Tablet (992px)
================================ */

@media (max-width:992px){

    .bw-hero__inner{

        grid-template-columns:1fr;
        gap:30px;
        text-align:center;
        min-height:auto;
        padding:40px 0;

    }

    .bw-hero__copy{

        max-width:100%;
        padding:0;
        order:2;

    }

    .bw-printer-wrap{

        order:1;

    }

    .bw-hero h1{

        max-width:100%;
        font-size:36px;

    }

    .bw-hero ul{

        display:inline-block;
        text-align:left;

    }

    .bw-button{

        margin-top:25px;

    }

    .bw-printer{

        width:320px;
        max-width:100%;

    }

}


/* ================================
   Mobile (768px)
================================ */

@media (max-width:768px){

    .bw-hero{

        padding:20px 0;

    }

    .bw-hero__inner{

        width:calc(100% - 30px);
        gap:20px;
        padding:20px 0;

    }

    .bw-printer{

        width:260px;

    }

    .bw-hero h1{

        font-size:30px;
        line-height:1.25;

    }

    .bw-hero ul{

        font-size:15px;
        line-height:1.7;
        padding-left:20px;

    }

    .bw-button{

        width:100%;
        max-width:320px;
        margin:25px auto 0;
        display:flex;

    }

}


/* ================================
   Small Mobile (480px)
================================ */

@media (max-width:480px){

    .bw-hero{

        padding:15px 0;

    }

    .bw-hero__inner{

        width:calc(100% - 20px);
        gap:15px;

    }

    .bw-printer{

        width:220px;

    }

    .bw-hero h1{

        font-size:24px;
        line-height:1.3;

    }

    .bw-hero ul{

        font-size:14px;

    }

    .bw-button{

        width:100%;
        padding:14px 20px;
        font-size:14px;

    }

}

    .psm-highlight{
    animation: psmFlash 1.5s ease;
}

@keyframes psmFlash{

    0%{
        box-shadow:0 0 0 rgba(13,110,253,0);
    }

    30%{
        box-shadow:0 0 25px rgba(13,110,253,.45);
    }

    100%{
        box-shadow:0 0 0 rgba(13,110,253,0);
    }

}

.bw-trust {
      width: min(1160px, calc(100% - 40px));
      margin: 0 auto 22px;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 12px
    }

    .bw-trust__item {
      border: 1px solid var(--line);
      border-radius: 6px;
      padding: 14px 16px;
      background: #fff;
      font-size: 12px;
      font-weight: 700;
      color: #354050;
      box-shadow: 0 8px 18px rgba(18, 24, 32, .04)
    }

    .bw-trust__item strong {
      display: block;
      color: var(--dark);
      font-size: 13px;
      margin-bottom: 3px
    }

    .bw-official {
      width: min(1160px, calc(100% - 40px));
      margin: 0 auto 56px;
      display: grid;
      grid-template-columns: 1.15fr .85fr;
      gap: 18px
    }

    .bw-badges {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 10px
    }

    .bw-badge {
      display: flex;
      align-items: center;
      gap: 10px;
      border: 1px solid #dce9f6;
      border-radius: 8px;
      padding: 13px;
      background: #f7fbff;
      color: #253447;
      font-size: 12px;
      font-weight: 700
    }

    .bw-badge__icon {
      display: grid;
      place-items: center;
      width: 30px;
      height: 30px;
      border-radius: 50%;
      background: var(--brand);
      color: #fff;
      font-weight: 800
    }

    .bw-checklist {
      border: 1px solid var(--line);
      border-radius: 8px;
      padding: 18px;
      background: #fff
    }

    .bw-checklist h3 {
      margin: 0 0 12px;
      font-size: 16px
    }

    .bw-checklist ul {
      margin: 0;
      padding-left: 18px;
      color: #414a56;
      font-size: 13px;
      font-weight: 600
    }

    .bw-checklist li {
      margin: 7px 0
    }

    /* ==========================================
   Responsive - Content Section
========================================== */

@media (max-width:1024px){

    .bw-content{

        grid-template-columns:1fr;
        gap:30px;
        width:calc(100% - 30px);

    }

    .psm-wrapper{

        max-width:100%;
        margin:0;

    }

}


/* ==========================================
   Responsive - Tablet
========================================== */

@media (max-width:768px){

    .bw-content{

        grid-template-columns:1fr;
        gap:25px;
        width:calc(100% - 20px);
        padding:20px 0;

    }

    .bw-help-card{

        min-height:130px;

    }

    .bw-help-card__paper{

        transform:scale(.9);

    }

    .bw-trust{

        grid-template-columns:1fr;
        width:calc(100% - 20px);
        gap:15px;

    }

    .bw-trust__item{

        padding:18px;

    }

    .bw-official{

        grid-template-columns:1fr;
        width:calc(100% - 20px);
        gap:20px;

    }

    .bw-badges{

        grid-template-columns:1fr;

    }

    .bw-badge{

        padding:15px;

    }

    .bw-checklist{

        padding:20px;

    }

    .bw-checklist h3{

        font-size:18px;

    }

}


/* ==========================================
   Responsive - Mobile
========================================== */

@media (max-width:480px){

    .bw-content{

        width:calc(100% - 16px);
        gap:20px;

    }

    .bw-help-card{

        min-height:110px;

    }

    .bw-help-card__paper{

        transform:scale(.75);

    }

    .bw-trust{

        width:calc(100% - 16px);

    }

    .bw-trust__item{

        font-size:13px;
        padding:15px;

    }

    .bw-trust__item strong{

        font-size:14px;

    }

    .bw-official{

        width:calc(100% - 16px);

    }

    .bw-badges{

        grid-template-columns:1fr;

    }

    .bw-badge{

        font-size:13px;
        padding:14px;

    }

    .bw-badge__icon{

        width:28px;
        height:28px;
        font-size:13px;

    }

    .bw-checklist{

        padding:16px;

    }

    .bw-checklist h3{

        font-size:17px;

    }

    .bw-checklist ul{

        font-size:14px;

    }

}

/* Lead Popup */

#leadModal{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.65);
    z-index:999999;
}

.psm-lead-content{

    width:100%;
    max-width:520px;

    background:#fff;

    margin:70px auto;

    padding:35px;

    border-radius:12px;

    position:relative;

    box-shadow:0 20px 60px rgba(0,0,0,.25);

}

.psm-lead-close{

    position:absolute;

    right:18px;

    top:12px;

    font-size:30px;

    cursor:pointer;

}

.psm-lead-content h2{

    margin:0 0 10px;

    font-size:34px;

    font-weight:700;

}

.psm-lead-content p{

    margin-bottom:25px;

    color:#666;

}

#leadForm input{

    width:100%;

    height:52px;

    margin-bottom:18px;

    padding:0 15px;

    border:1px solid #ddd;

    border-radius:6px;

    font-size:15px;

    box-sizing:border-box;

}

#leadForm input:focus,
#leadForm select:focus{

    outline:none;

    border-color:#0d6efd;

    box-shadow:0 0 8px rgba(13,110,253,.2);

}

/* #leadForm button{

    width:100%;

    height:52px;

    border:none;

    background:#0d6efd;

    color:#fff;

    font-size:17px;

    border-radius:6px;

    cursor:pointer;

} */
#leadForm button[type="submit"]{
    width:100%;
    height:50px;
    background:#1f6df5;
    color:#fff;
    border:0;
    border-radius:6px;
    font-size:18px;
    font-weight:600;
    cursor:pointer;
}

#leadForm button:hover{

    background:#0b5ed7;

}

