/* ==========================================================
   SONSEC - REUSABLE PRODUCT PAGE TEMPLATE
   ========================================================== */

.product-page{
    overflow:hidden;
    background:#F8FAFC;
    color:#0F172A;
}

.product-page .screen-reader-text{
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}

.product-page__hero{
    position:relative;
    padding:26px 0 16px;
    overflow:hidden;
    background:#F8FAFC;
    color:#0F172A;
}

.product-page__hero-stack{
    display:grid;
    gap:10px;
}

.product-page__intro-grid{
    display:grid;
    grid-template-areas:
        "content"
        "media";
    gap:16px;
    align-items:stretch;
}

.product-page__intro-grid--no-media{
    grid-template-areas:"content";
}

.product-page__intro-panel{
    grid-area:content;
    display:flex;
    flex-direction:column;
    gap:12px;
    height:100%;
    padding:18px;
    border:1px solid rgba(0,87,184,.14);
    border-radius:var(--sonsec-radius-xl);
    background:#FFFFFF;
    box-shadow:var(--sonsec-shadow-md);
}

.product-page__intro-panel .product-page__eyebrow{
    margin-bottom:0;
}

.product-page__intro-panel h1{
    margin:0;
    color:#0F172A;
    font-size:clamp(2.25rem,2.6vw,2.75rem);
    font-weight:780;
    line-height:1.08;
}

.product-page__intro-heading{
    display:grid;
    gap:8px;
}

.product-page__intro-status{
    display:inline-flex;
    width:max-content;
    align-items:center;
    min-height:30px;
    padding:5px 10px;
    border-radius:999px;
    background:#EAF1FF;
    color:#1236A5;
    font-size:.82rem;
    font-weight:780;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.product-page__credential-note{
    display:grid;
    gap:8px;
    padding:16px 18px;
    border:1px solid rgba(0,87,184,.14);
    border-radius:var(--sonsec-radius-lg);
    background:linear-gradient(135deg,rgba(0,87,184,.06) 0%,#FFFFFF 78%);
    box-shadow:var(--sonsec-shadow-xs);
}

.product-page__credential-note-heading{
    margin:0;
    color:#0057B8;
    font-size:.8rem;
    font-weight:900;
    letter-spacing:.14em;
    line-height:1.35;
    text-transform:uppercase;
}

.product-page__credential-note-intro,
.product-page__credential-note-detail{
    margin:0;
    color:#334155;
    font-size:.95rem;
    line-height:1.65;
}

.product-page__credential-note-detail{
    color:#475569;
}

.product-page__verification-note{
    margin:0;
    padding:12px 14px;
    border-radius:12px;
    border:1px solid rgba(0,87,184,.12);
    background:rgba(0,87,184,.04);
    color:#1E293B;
    font-size:.95rem;
    line-height:1.58;
}

.product-page__credential-note-list{
    display:grid;
    gap:6px;
    padding-left:18px;
    margin:0;
    color:#475569;
    font-size:.92rem;
    line-height:1.55;
}

.product-page__intro-actions{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:8px;
}

.product-document-card__source{
    margin:0;
    color:#475569;
    font-size:.82rem;
    line-height:1.5;
}

.product-document-card__source a{
    color:#0057B8;
    text-decoration:none;
}

.product-document-card__source a:hover,
.product-document-card__source a:focus-visible{
    color:#3333FF;
    text-decoration:underline;
}

.product-page__hero-content{
    display:grid;
    gap:16px;
    max-width:780px;
    padding:8px 0 0;
}

.product-page__eyebrow,
.product-cta__kicker{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin:0 0 18px;
    color:#176B2B;
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.16em;
    line-height:1.4;
    text-transform:uppercase;
}

.product-page__eyebrow::before,
.product-cta__kicker::before{
    content:"";
    width:36px;
    height:3px;
    border-radius:999px;
    background:#39FF14;
}

.product-page h1{
    margin:0 0 22px;
    color:#0F172A;
    font-size:clamp(2.25rem,3.2vw,2.75rem);
    font-weight:780;
    letter-spacing:0;
    line-height:1.04;
}

.product-page__subtitle{
    max-width:680px;
    margin:0;
    color:#475569;
    font-size:clamp(1.0625rem,1.3vw,1.1875rem);
    line-height:1.65;
}

.product-page__hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:30px;
}

.product-page__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:12px 18px;
    border:2px solid rgba(0,87,184,.22);
    border-radius:10px;
    color:#0057B8;
    font-size:.96rem;
    font-weight:800;
    line-height:1.25;
    text-decoration:none;
    transition:
        background-color .2s ease,
        border-color .2s ease,
        color .2s ease;
}

.product-page__button--primary{
    border-color:#0057B8;
    background:#0057B8;
    color:#FFFFFF;
}

.product-page__button--whatsapp{
    border-color:#1F9D55;
    color:#176B2B;
}

.product-page__button--whatsapp:hover,
.product-page__button--whatsapp:focus-visible{
    border-color:#1F9D55;
    background:#1F9D55;
    color:#FFFFFF;
}

.product-page__button:hover,
.product-page__button:focus-visible{
    border-color:#3333FF;
    background:#3333FF;
    color:#FFFFFF;
    text-decoration:none;
}

.product-page__image{
    position:relative;
    grid-area:media;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0;
    padding:4px;
    border:1px solid rgba(0,87,184,.18);
    border-radius:var(--sonsec-radius-lg);
    background:
        radial-gradient(circle at 50% 44%,rgba(0,87,184,.08),transparent 58%),
        linear-gradient(180deg,#FFFFFF 0%,#F6FAFF 100%);
    box-shadow:var(--sonsec-shadow-md);
    overflow:hidden;
    width:100%;
    min-width:0;
    min-height:0;
}

.product-page__image picture{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
}

.product-page__image img{
    display:block;
    width:auto;
    max-width:96%;
    height:auto;
    max-height:min(56vh,560px);
    object-fit:contain;
}

.product-page__image--placeholder{
    color:#334155;
    font-weight:800;
    text-align:center;
}

.product-page__image--fallback img{
    max-width:74%;
    max-height:180px;
}

.product-page__image-status{
    position:absolute;
    right:14px;
    bottom:14px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:7px 11px;
    border-radius:999px;
    background:#FFF4E6;
    color:#92400E;
    font-size:.78rem;
    font-weight:800;
    line-height:1;
}

.product-page__hero-meta{
    display:grid;
    gap:14px;
    margin:0;
}

.product-page__hero-meta div{
    padding:20px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:16px;
    background:#FFFFFF;
    box-shadow:0 10px 24px rgba(15,23,42,.05);
}

.product-page__hero-meta dt{
    margin:0 0 6px;
    color:#64748B;
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.product-page__hero-meta dd{
    margin:0;
    color:#0F172A;
    font-size:1rem;
    font-weight:800;
}

.product-spec-strip{
    padding:0;
    margin-top:0;
}

.product-spec-strip__grid{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:stretch;
    gap:16px;
    max-width:1580px;
    margin-inline:auto;
}

.product-spec-strip__card{
    display:flex;
    flex:0 1 210px;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-width:0;
    min-height:126px;
    padding:17px 18px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:var(--sonsec-radius-lg);
    background:#FFFFFF;
    box-shadow:var(--sonsec-shadow-xs);
    text-align:center;
}

.product-spec-strip__icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:18px;
    height:18px;
    color:#0057B8;
}

.product-spec-strip__icon svg{
    display:block;
    width:100%;
    height:100%;
}

.product-spec-strip__value{
    color:#176B2B;
    max-width:100%;
    font-size:clamp(1.0625rem,1vw,1.25rem);
    font-weight:650;
    letter-spacing:0;
    line-height:1.28;
    text-align:center;
    overflow-wrap:break-word;
    word-break:normal;
}

.product-spec-strip__value--long{
    font-size:clamp(.96875rem,.9vw,1.0625rem);
    line-height:1.3;
}

.product-spec-strip__value--compact{
    font-size:clamp(.9375rem,.84vw,1rem);
    font-weight:625;
    line-height:1.32;
}

.product-spec-strip__label{
    color:#475569;
    font-size:clamp(.78125rem,.72vw,.84375rem);
    font-weight:625;
    line-height:1.35;
    text-align:center;
}

.product-page__content{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:24px;
    padding-top:56px;
    padding-bottom:56px;
}

.product-page__main{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:22px;
    min-width:0;
}

.product-page__breadcrumbs-wrap{
    padding:18px 0;
    border-bottom:1px solid rgba(15,23,42,.08);
    background:#FFFFFF;
}

.product-breadcrumbs ol{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    padding:0;
    margin:0;
    list-style:none;
}

.product-breadcrumbs li{
    display:flex;
    align-items:center;
    gap:8px;
    color:#64748B;
    font-size:.88rem;
    font-weight:700;
}

.product-breadcrumbs li:not(:last-child)::after{
    content:"/";
    color:#94A3B8;
    font-weight:800;
}

.product-breadcrumbs a{
    color:#0057B8;
    text-decoration:none;
}

.product-breadcrumbs a:hover,
.product-breadcrumbs a:focus-visible{
    color:#3333FF;
    text-decoration:underline;
}

.product-page__section{
    min-width:0;
    scroll-margin-top:120px;
    padding:28px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:var(--sonsec-radius-lg);
    background:#ffffff;
    box-shadow:var(--sonsec-shadow-md);
}

.product-page__section h2{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 0 18px;
    color:#0F172A;
    font-size:clamp(1.5rem,1.8vw,1.875rem);
    line-height:1.2;
    letter-spacing:0;
}

.product-page__section h2::before{
    content:"";
    width:12px;
    height:12px;
    border-radius:4px;
    background:#0057B8;
    box-shadow:0 0 0 6px rgba(0,87,184,.10);
}

.product-page__section h3{
    margin:0 0 10px;
    color:#1236A5;
    font-size:clamp(1.12rem,1.2vw,1.32rem);
    line-height:1.35;
}

.product-page__section p{
    margin:0;
    color:#475569;
    font-size:1rem;
    line-height:1.65;
}

.product-page__documentation-state{
    padding:16px 18px;
    border:1px solid rgba(51,51,255,.18);
    border-left:4px solid var(--sonsec-primary);
    border-radius:var(--sonsec-radius-sm);
    background:#F8FAFC;
}

.product-page__section + .product-page__section{
    position:relative;
}

.product-page__technician-notes,
.product-page__legacy-support{
    border-color:rgba(15,23,42,.08);
    background:#FFFFFF;
}

.product-page__verdict{
    border-color:rgba(0,87,184,.18);
    border-left:6px solid #0057B8;
    background:linear-gradient(135deg,rgba(0,87,184,.08) 0%,#FFFFFF 72%);
    box-shadow:0 22px 52px rgba(0,87,184,.14);
}

.product-page__verdict h2{
    color:#0057B8;
    font-weight:780;
}

.product-page__verdict h2::before{
    width:28px;
    height:28px;
    border-radius:999px;
    background:#0057B8;
    box-shadow:0 0 0 7px rgba(0,87,184,.12);
}

.product-page__note-grid,
.product-page__feature-grid,
.product-page__application-grid,
.product-page__insight-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:14px;
    margin-top:22px;
}

.product-page__note-card,
.product-page__feature-card,
.product-page__application-card,
.product-page__insight-card{
    min-width:0;
    padding:22px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:var(--sonsec-radius-md);
    background:#FFFFFF;
    box-shadow:var(--sonsec-shadow-xs);
}

.product-page__knowledge-section{
    background:linear-gradient(180deg,#FFFFFF 0%,#FAFCFF 100%);
}

.product-page__insight-card{
    position:relative;
    padding-left:46px;
}

.product-page__insight-card::before{
    content:"";
    position:absolute;
    top:25px;
    left:22px;
    width:9px;
    height:9px;
    border-radius:999px;
    background:#0057B8;
    box-shadow:0 0 0 6px rgba(0,87,184,.10);
}

.product-page__insight-card h3{
    color:#0F172A;
}

.product-page__note-card ul{
    display:grid;
    gap:8px;
    padding-left:18px;
    margin:0;
    color:#475569;
    font-size:1rem;
    line-height:1.6;
}

.product-page__feature-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    margin-bottom:14px;
    border-radius:12px;
    background:#EAF1FF;
    color:#1236A5;
    font-weight:900;
}

.product-page__application-status{
    display:inline-flex;
    margin:0 0 10px !important;
    padding:5px 9px;
    border-radius:999px;
    background:#EAF1FF;
    color:#1236A5 !important;
    font-size:.82rem;
    font-weight:800;
    letter-spacing:.05em;
    text-transform:uppercase;
}

.product-page__application-badges{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:0 0 22px;
}

.product-page__application-badges span{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:7px 12px;
    border:1px solid rgba(0,87,184,.18);
    border-radius:999px;
    background:#F0F7FF;
    color:#0F3F7A;
    font-size:.86rem;
    font-weight:800;
    line-height:1.2;
}

.product-page__check-list,
.product-page__card-list{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:12px;
    padding:0;
    margin:0;
    list-style:none;
}

.product-page__check-list li,
.product-page__card-list li{
    position:relative;
    padding:16px 18px 16px 44px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:14px;
    background:#F8FAFC;
    color:#334155;
    font-size:1rem;
    line-height:1.58;
}

.product-page__check-list li::before{
    content:"";
    position:absolute;
    top:23px;
    left:20px;
    width:9px;
    height:9px;
    border-radius:999px;
    background:#39FF14;
    box-shadow:0 0 0 5px rgba(57,255,20,.15);
}

.product-page__compatibility-list{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:0;
    margin:0;
    overflow:hidden;
    border:1px solid rgba(15,23,42,.08);
    border-radius:14px;
    background:#fff;
}

.product-page__compatibility-list div{
    display:grid;
    grid-template-columns:minmax(160px,.38fr) minmax(0,1fr);
    border-bottom:1px solid rgba(15,23,42,.08);
}

.product-page__compatibility-list div:last-child{
    border-bottom:0;
}

.product-page__compatibility-list dt,
.product-page__compatibility-list dd{
    margin:0;
    padding:14px 16px;
    font-size:.96rem;
    line-height:1.55;
}

.product-page__compatibility-list dt{
    background:#F8FAFC;
    color:#0F172A;
    font-weight:800;
}

.product-page__compatibility-list dd{
    color:#334155;
    overflow-wrap:anywhere;
}

.product-page__compatibility-list a{
    color:#0057B8;
    font-weight:700;
}

.product-specifications{
    width:100%;
    overflow-x:auto;
}

.product-specifications table{
    width:100%;
    min-width:520px;
    border-collapse:separate;
    border-spacing:0;
    overflow:hidden;
    border:1px solid rgba(15,23,42,.08);
    border-radius:14px;
}

.product-specifications th,
.product-specifications td{
    padding:14px 16px;
    font-size:.96rem;
    border-bottom:1px solid rgba(15,23,42,.08);
    text-align:left;
    vertical-align:top;
}

.product-specifications thead th{
    background:#F1F6FB;
    color:#0F172A;
}

.product-specifications th{
    width:34%;
    color:#0F172A;
    font-weight:800;
}

.product-specifications td{
    color:#475569;
}

.product-downloads{
    display:grid;
    gap:14px;
}

.product-downloads__item{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:16px;
    align-items:center;
    padding:20px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:14px;
    background:#FFFFFF;
    box-shadow:0 10px 24px rgba(15,23,42,.05);
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        border-color .2s ease;
}

.product-downloads__item:hover,
.product-downloads__item:focus-within{
    transform:translateY(-2px);
    border-color:rgba(0,87,184,.18);
    box-shadow:0 16px 34px rgba(15,23,42,.09);
}

.product-downloads__document{
    position:relative;
    width:42px;
    height:52px;
    border-radius:8px;
    background:#EAF1FF;
    color:#0057B8;
    box-shadow:inset 0 0 0 1px rgba(0,87,184,.16);
}

.product-downloads__document::before{
    content:"";
    position:absolute;
    top:8px;
    right:8px;
    width:10px;
    height:10px;
    border-top:2px solid currentColor;
    border-right:2px solid currentColor;
}

.product-downloads__document::after{
    content:"";
    position:absolute;
    right:10px;
    bottom:12px;
    left:10px;
    height:12px;
    border-top:2px solid currentColor;
    border-bottom:2px solid currentColor;
}

.product-downloads__item h3{
    margin:0 0 6px;
}

.product-downloads__item p{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:0;
    font-size:.92rem;
}

.product-downloads__item p span{
    color:#64748B;
}

.product-downloads__item p span:not(:last-child)::after{
    content:"";
    display:inline-block;
    width:4px;
    height:4px;
    margin-left:8px;
    border-radius:999px;
    background:#CBD5E1;
    vertical-align:middle;
}

.product-downloads__link,
.product-downloads__status,
.product-cta__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:11px 16px;
    border-radius:10px;
    font-size:.96rem;
    font-weight:800;
    line-height:1.25;
    text-align:center;
    text-decoration:none;
}

.product-downloads__icon{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:20px;
    height:24px;
    margin-right:10px;
    border-radius:4px;
    background:rgba(255,255,255,.18);
}

.product-downloads__icon::before{
    content:"";
    position:absolute;
    inset:5px 4px 4px;
    border-top:2px solid currentColor;
    border-bottom:2px solid currentColor;
}

.product-downloads__icon::after{
    content:"";
    position:absolute;
    top:4px;
    right:4px;
    width:6px;
    height:6px;
    border-top:2px solid currentColor;
    border-right:2px solid currentColor;
}

.product-downloads__link{
    border:2px solid #1236A5;
    background:#1236A5;
    color:#ffffff;
    transition:
        transform .2s ease,
        background-color .2s ease,
        border-color .2s ease,
        color .2s ease;
}

.product-downloads__status{
    border:1px solid rgba(15,23,42,.12);
    background:#F1F5F9;
    color:#64748B;
}

.product-downloads__status .product-downloads__icon{
    background:#E2E8F0;
    color:#64748B;
}

.product-faqs{
    display:grid;
    gap:12px;
}

.product-faqs__item{
    border:1px solid rgba(15,23,42,.08);
    border-radius:14px;
    background:#FFFFFF;
    box-shadow:0 10px 24px rgba(15,23,42,.05);
}

.product-faqs__item summary{
    cursor:pointer;
    padding:18px;
    color:#0F172A;
    font-weight:800;
}

.product-faqs__item p{
    padding:0 18px 18px;
}

.product-page__troubleshooting-list{
    display:grid;
    gap:14px;
}

.product-page__troubleshooting-card,
.product-troubleshooting__card{
    padding:20px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:14px;
    background:#FFFFFF;
    box-shadow:0 10px 24px rgba(15,23,42,.05);
}

.product-troubleshooting{
    display:grid;
    gap:14px;
}

.product-troubleshooting__card{
    display:grid;
    gap:12px;
}

.product-troubleshooting__card p{
    margin:0;
}

.product-troubleshooting__cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:max-content;
    min-height:42px;
    padding:9px 14px;
    border:1px solid #0057B8;
    border-radius:10px;
    background:#0057B8;
    color:#FFFFFF;
    font-weight:800;
    text-decoration:none;
    transition:
        transform .2s ease,
        background-color .2s ease,
        border-color .2s ease;
}

.product-troubleshooting__cta:hover,
.product-troubleshooting__cta:focus-visible{
    transform:translateY(-1px);
    border-color:#3333FF;
    background:#3333FF;
    color:#FFFFFF;
    text-decoration:none;
}

.product-page__related-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:18px;
}

.product-cta-panel{
    display:grid;
    gap:18px;
    padding:24px;
    border:1px solid rgba(0,87,184,.16);
    border-radius:16px;
    background:linear-gradient(135deg,#FFFFFF 0%,#F0F7FF 100%);
    box-shadow:0 18px 42px rgba(0,87,184,.10);
}

.product-cta-panel h2{
    margin:0 0 8px;
    color:#0F172A;
    font-size:1.45rem;
    line-height:1.2;
    letter-spacing:0;
}

.product-cta-panel p{
    margin:0;
    color:#475569;
    line-height:1.65;
}

.product-cta-panel__actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.product-cta-panel__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:10px 14px;
    border:1px solid #0057B8;
    border-radius:10px;
    color:#0057B8;
    font-weight:800;
    text-decoration:none;
    transition:
        transform .2s ease,
        background-color .2s ease,
        border-color .2s ease,
        color .2s ease;
}

.product-cta-panel__button--primary,
.product-cta-panel__button:hover,
.product-cta-panel__button:focus-visible{
    transform:translateY(-1px);
    background:#0057B8;
    color:#FFFFFF;
    text-decoration:none;
}

.product-cta-panel__button--whatsapp{
    border-color:#1F9D55;
    color:#176B2B;
}

.product-cta-panel__button--whatsapp:hover,
.product-cta-panel__button--whatsapp:focus-visible{
    border-color:#1F9D55;
    background:#1F9D55;
    color:#FFFFFF;
}

.product-sidebar{
    min-width:0;
}

.product-sidebar__panel{
    display:grid;
    gap:20px;
    padding:22px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:16px;
    background:#FFFFFF;
    box-shadow:0 18px 42px rgba(15,23,42,.08);
}

.product-sidebar__badge{
    display:inline-flex;
    width:max-content;
    min-height:32px;
    align-items:center;
    padding:6px 10px;
    border:1px solid rgba(57,181,74,.25);
    border-radius:999px;
    background:#F0FFF0;
    color:#176B2B;
    font-size:.82rem;
    font-weight:900;
    line-height:1.2;
}

.product-sidebar h2,
.product-sidebar h3{
    margin:0;
    color:#0F172A;
    letter-spacing:0;
}

.product-sidebar h2{
    font-size:1.38rem;
    line-height:1.2;
}

.product-sidebar h3{
    font-size:.9rem;
    font-weight:900;
    text-transform:uppercase;
}

.product-sidebar__section{
    display:grid;
    gap:10px;
    padding-top:18px;
    border-top:1px solid rgba(15,23,42,.08);
}

.product-sidebar__meta,
.product-sidebar__facts{
    display:grid;
    gap:10px;
    margin:0;
}

.product-sidebar__meta div,
.product-sidebar__facts div{
    display:grid;
    gap:2px;
}

.product-sidebar dt{
    color:#64748B;
    font-size:.8rem;
    font-weight:900;
    text-transform:uppercase;
}

.product-sidebar dd{
    margin:0;
    color:#0F172A;
    font-weight:700;
    line-height:1.35;
}

.product-sidebar__badges{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.product-sidebar__badges span{
    display:inline-flex;
    min-height:30px;
    align-items:center;
    padding:5px 9px;
    border:1px solid rgba(0,87,184,.16);
    border-radius:999px;
    background:#F0F7FF;
    color:#0F3F7A;
    font-size:.8rem;
    font-weight:800;
}

.product-sidebar__list{
    display:grid;
    gap:8px;
    padding:0;
    margin:0;
    list-style:none;
    color:#475569;
}

.product-sidebar__list li{
    line-height:1.45;
}

.product-sidebar__list a{
    color:#0057B8;
    font-weight:800;
    text-decoration:none;
}

.product-sidebar__actions{
    display:grid;
    gap:10px;
    padding-top:18px;
    border-top:1px solid rgba(15,23,42,.08);
}

.product-sidebar__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:10px 14px;
    border:1px solid #0057B8;
    border-radius:10px;
    color:#0057B8;
    font-weight:800;
    text-align:center;
    text-decoration:none;
    transition:
        transform .2s ease,
        background-color .2s ease,
        border-color .2s ease,
        color .2s ease;
}

.product-sidebar__button--primary,
.product-sidebar__button:hover,
.product-sidebar__button:focus-visible{
    transform:translateY(-1px);
    background:#0057B8;
    color:#FFFFFF;
    text-decoration:none;
}

.product-sidebar__button--whatsapp{
    border-color:#1F9D55;
    color:#176B2B;
}

.product-sidebar__button--whatsapp:hover,
.product-sidebar__button--whatsapp:focus-visible{
    border-color:#1F9D55;
    background:#1F9D55;
    color:#FFFFFF;
}

.product-cta{
    padding:72px 0;
    background:#07163F;
    color:#ffffff;
}

.product-cta__layout{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:32px;
    align-items:center;
}

.product-cta h2{
    margin:0 0 16px;
    color:#ffffff;
    font-size:clamp(2rem,3vw,2.7rem);
    line-height:1.1;
    letter-spacing:0;
}

.product-cta p{
    margin:0;
    max-width:680px;
    color:#DCE8FF;
    line-height:1.75;
}

.product-cta__actions{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:12px;
}

.product-cta__button{
    border:2px solid rgba(255,255,255,.45);
    color:#ffffff;
    transition:
        background-color .2s ease,
        border-color .2s ease,
        color .2s ease;
}

.product-cta__button--primary{
    border-color:#39FF14;
    background:#39FF14;
    color:#07163F;
}

.product-cta__button--whatsapp{
    border-color:#1F9D55;
    background:#1F9D55;
}

.product-downloads__link:hover,
.product-downloads__link:focus-visible{
    transform:translateY(-2px);
    background:#3333FF;
    border-color:#3333FF;
    color:#ffffff;
}

.product-cta__button:hover,
.product-cta__button:focus-visible{
    border-color:#39FF14;
    background:#39FF14;
    color:#07163F;
    text-decoration:none;
}

.product-downloads__link:focus-visible,
.product-faqs__item summary:focus-visible,
.product-troubleshooting__cta:focus-visible,
.product-cta-panel__button:focus-visible,
.product-sidebar a:focus-visible,
.product-page__button:focus-visible,
.product-cta__button:focus-visible{
    outline:3px solid #39FF14;
    outline-offset:3px;
}

@media (min-width:700px){
    .product-page__intro-actions{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .product-page__hero-meta{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .product-page__card-list,
    .product-page__note-grid,
    .product-page__feature-grid,
    .product-page__application-grid,
    .product-page__insight-grid,
    .product-cta__actions{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .product-downloads__item{
        grid-template-columns:auto minmax(0,1fr) auto;
    }
}

@media (min-width:700px) and (max-width:979px){
    .product-page__image img{
        max-height:46vh;
    }
}

@media (min-width:980px){
    .product-page__hero{
        padding-top:18px;
        padding-bottom:12px;
    }

    .product-page__hero-stack{
        gap:10px;
    }

    .product-page__intro-grid{
        grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
        grid-template-areas:"media content";
        gap:18px;
        align-items:stretch;
    }

    .product-page__intro-grid--no-media{
        grid-template-columns:minmax(0,1fr);
        grid-template-areas:"content";
    }

    .product-page__intro-panel{
        padding:18px;
    }

    .product-page__intro-panel .product-page__eyebrow{
        margin-bottom:6px;
    }

    .product-page__credential-note{
        margin-top:2px;
    }

    .product-page__intro-actions{
        margin-top:auto;
    }

    .product-page__image{
        height:100%;
        padding:4px;
    }

    .product-page__image img{
        max-height:clamp(340px,56vh,580px);
    }

    .product-page__intro-actions{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .product-page__content{
        grid-template-columns:minmax(0,1fr) minmax(300px,390px);
        align-items:start;
        gap:clamp(20px,1.5vw,30px);
    }

    .product-spec-strip__grid{
        gap:clamp(14px,1.1vw,22px);
    }

    .product-spec-strip__card{
        flex-basis:220px;
        min-height:122px;
        padding:16px;
    }

    .product-page__main{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .product-page__summary,
    .product-page__compatibility,
    .product-page__technician-notes,
    .product-page__verdict,
    .product-page__knowledge-section,
    .product-cta-panel,
    .product-page__section:has(.product-specifications),
    .product-page__section:has(.product-faqs),
    .product-page__legacy-support{
        grid-column:1 / -1;
    }

    .product-sidebar{
        position:sticky;
        top:112px;
    }

    .product-cta__layout{
        grid-template-columns:minmax(0,1fr) minmax(320px,.55fr);
    }
}

@media (min-width:1400px){
    .product-page__note-grid,
    .product-page__feature-grid,
    .product-page__application-grid,
    .product-page__insight-grid,
    .product-page__related-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}

@media (max-width:699px){
    .product-page .container{
        padding-inline:16px;
    }

    .product-page__hero{
        padding:28px 0 18px;
    }

    .product-page__intro-grid{
        gap:12px;
        min-width:0;
    }

    .product-page__intro-panel{
        padding:16px;
        min-width:0;
    }

    .product-page__subtitle,
    .product-page__verification-note{
        max-width:100%;
        overflow-wrap:break-word;
    }

    .product-page__image{
        width:100%;
        max-width:100%;
        padding:10px;
        min-height:220px;
    }

    .product-page__image img{
        max-height:none;
    }

    .product-page__content{
        padding-top:44px;
        padding-bottom:44px;
    }

    .product-page__section{
        padding:22px;
    }

    .product-page__compatibility-list div{
        grid-template-columns:minmax(0,1fr);
    }

    .product-page__hero-actions{
        flex-direction:column;
    }

    .product-page__intro-actions{
        grid-template-columns:minmax(0,1fr);
    }

    .product-page__button{
        width:100%;
    }

    .product-page__intro-panel h1{
        font-size:clamp(2rem,7vw,2.32rem);
        line-height:1.08;
    }

    .product-spec-strip__grid{
        gap:10px;
    }

    .product-spec-strip__card{
        flex:0 1 min(100%, 260px);
        max-width:260px;
        min-height:106px;
        padding:13px 14px;
    }

    .product-spec-strip__value{
        font-size:clamp(1rem,4.2vw,1.125rem);
        line-height:1.28;
        overflow-wrap:break-word;
    }

    .product-spec-strip__value--long,
    .product-spec-strip__value--compact{
        font-size:clamp(.9375rem,3.6vw,1rem);
        line-height:1.32;
    }

    .product-spec-strip__label{
        font-size:.8125rem;
    }

    .product-specifications{
        overflow:visible;
    }

    .product-specifications table,
    .product-specifications thead,
    .product-specifications tbody,
    .product-specifications tr,
    .product-specifications th,
    .product-specifications td{
        display:block;
        width:100%;
        min-width:0;
    }

    .product-specifications thead{
        position:absolute;
        width:1px;
        height:1px;
        overflow:hidden;
        clip:rect(0,0,0,0);
    }

    .product-specifications tr{
        padding:14px;
        border-bottom:1px solid rgba(15,23,42,.08);
    }

    .product-specifications tr:last-child{
        border-bottom:0;
    }

    .product-specifications th,
    .product-specifications td{
        padding:4px 0;
        border-bottom:0;
    }

    .product-specifications th::before,
    .product-specifications td::before{
        content:attr(data-label);
        display:block;
        margin-bottom:2px;
        color:#64748B;
        font-size:.74rem;
        font-weight:800;
        text-transform:uppercase;
    }

    .product-downloads__item{
        grid-template-columns:auto minmax(0,1fr);
    }

    .product-downloads__link,
    .product-downloads__status,
    .product-troubleshooting__cta,
    .product-cta-panel__button{
        width:100%;
    }

    .product-cta{
        padding:56px 0;
    }
}

@media (min-width:561px) and (max-width:699px){
    .product-spec-strip__card{
        flex-basis:188px;
        max-width:188px;
    }
}

@media (prefers-reduced-motion:reduce){
    .product-page__button,
    .product-downloads__link,
    .product-downloads__item,
    .product-troubleshooting__cta,
    .product-cta-panel__button,
    .product-sidebar__button,
    .product-cta__button{
        transition:none;
    }

    .product-downloads__link:hover,
    .product-downloads__link:focus-visible,
    .product-downloads__item:hover,
    .product-downloads__item:focus-within,
    .product-troubleshooting__cta:hover,
    .product-troubleshooting__cta:focus-visible,
    .product-cta-panel__button:hover,
    .product-cta-panel__button:focus-visible,
    .product-sidebar__button:hover,
    .product-sidebar__button:focus-visible{
        transform:none;
    }
}
