*{
    box-sizing:border-box;
}

.area-euro-page{
    overflow-x:hidden;
    background:#f8fafc;
    color:#102a43;
    font-family:Inter,"Segoe UI",sans-serif;
}

.area-euro-page main{
    margin-top:0!important;
}

.area-layout{
    padding:1.5rem .75rem 2.75rem;
}

.area-content{
    min-width:0;
}

.area-euro-page h1{
    position:relative;
    overflow:hidden;
    margin:0 0 1.25rem;
    padding:clamp(1.6rem,4vw,3.4rem);
    color:#fff;
    font-size:clamp(2.1rem,4vw,3.35rem);
    line-height:1.08;
    font-weight:800;
    letter-spacing:0;
    background:linear-gradient(135deg,#102a43 0%,#146477 55%,#25a18e 100%);
    border-radius:24px;
    box-shadow:0 1.2rem 3rem rgba(16,42,67,.2);
}

.area-euro-page h1:after{
    content:"EURO";
    position:absolute;
    right:2rem;
    top:1.1rem;
    color:rgba(255,255,255,.08);
    font-size:clamp(4rem,9vw,7.8rem);
    line-height:1;
    font-weight:900;
}

.area-card,
.area-chart-card,
.area-action-card,
.area-five-year,
.area-table-wrap{
    color:#102a43;
    background:#fff;
    border:0;
    border-radius:20px;
    box-shadow:0 .65rem 1.9rem rgba(31,41,55,.08);
}

.area-card{
    padding:clamp(1.25rem,3vw,2rem)!important;
}

.area-intro{
    max-width:900px;
    margin-bottom:1.35rem;
}

.area-intro h2,
.area-five-year h2,
.area-chart-card h2,
.area-table-section h2,
.area-links-section h2{
    margin:0 0 .55rem;
    color:#102a43;
    font-size:clamp(1.35rem,2.2vw,2rem);
    font-weight:800;
    letter-spacing:0;
}

.area-intro p,
.area-table-section p,
.area-links-section p,
.area-action-card p{
    color:#64748b;
}

.area-eyebrow{
    margin:0 0 .35rem!important;
    color:#e16c3a!important;
    font-size:.76rem;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.area-kpi-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:1rem;
    margin:0 0 1rem;
}

.area-kpi-grid>.area-kpi{
    min-width:0;
}

.area-kpi{
    position:relative;
    overflow:hidden;
    min-height:150px;
    padding:1.25rem;
    background:linear-gradient(135deg,#fff 0%,#f0fbf8 100%);
    border:1px solid #bfe7df;
    border-radius:18px;
}

.area-kpi-primary{
    color:#fff;
    background:linear-gradient(135deg,#102a43 0%,#126b70 100%);
    border-color:#126b70;
    box-shadow:0 .85rem 1.8rem rgba(18,107,112,.22);
}

.area-kpi-label{
    color:#64748b;
    font-size:.74rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.area-kpi-primary .area-kpi-label,
.area-kpi-primary .area-kpi-meta{
    color:rgba(255,255,255,.76);
}

.area-kpi-value{
    margin:.45rem 0 .35rem;
    color:#126b70;
    font-size:clamp(2.15rem,4vw,3.45rem);
    line-height:1;
    font-weight:850;
}

.area-kpi-primary .area-kpi-value{
    color:#fff;
}

.area-kpi-max .area-kpi-value{
    color:#e16c3a;
}

.area-kpi-min .area-kpi-value{
    color:#2563a6;
}

.area-kpi-meta{
    color:#64748b;
    font-size:.95rem;
    font-weight:700;
}

.area-kpi-link{
    margin:0 0 1.5rem;
}

.area-five-year{
    margin:1.5rem 0;
    padding:clamp(1rem,2.4vw,1.5rem);
}

.area-five-year ul{
    display:grid;
    gap:.55rem;
    margin:1rem 0;
}

.area-five-year li{
    padding:.6rem .75rem;
    background:#f8fafc;
    border:1px solid #e2e8f0;
    border-radius:12px;
}

.area-chart-card{
    padding:1.25rem;
    margin:1.5rem 0;
}

.area-chart-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:1rem;
    margin-bottom:.75rem;
}

.area-chart-badge{
    flex:0 0 auto;
    padding:.45rem .75rem;
    color:#126b70;
    background:#e6f6f3;
    border:1px solid #bfe7df;
    border-radius:999px;
    font-size:.78rem;
    font-weight:800;
}

#areaEuroMeanChart{
    min-height:430px;
}

.area-table-section{
    margin-top:1.5rem;
}

.area-table-wrap{
    overflow:hidden;
    margin-top:1rem;
    border:1px solid #e2e8f0;
}

.area-euro-page table.table{
    margin-bottom:0;
    color:#102a43;
}

.area-euro-page table.table thead th{
    color:#fff;
    background:#102a43!important;
    border-color:#102a43!important;
    text-transform:uppercase;
    letter-spacing:.05em;
    font-size:.78rem;
}

.area-euro-page table.table tbody td,
.area-euro-page table.table tbody th{
    border-color:#e2e8f0!important;
    vertical-align:middle;
}

.area-euro-page table.table-striped>tbody>tr:nth-of-type(odd)>*{
    background:#f8fafc!important;
}

.area-euro-page table.table tbody tr:hover>*{
    background:#f0fbf8!important;
}

.area-action-card{
    margin-top:1.25rem;
    padding:1.25rem;
    border:1px solid #e2e8f0;
}

.area-action-primary{
    text-align:center;
    background:linear-gradient(135deg,#fff 0%,#f0fbf8 100%);
    border-color:#bfe7df;
}

.area-links-section{
    margin-top:2rem;
}

.area-link-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.85rem;
}

.area-link-card{
    display:block;
    min-height:100%;
    padding:1rem;
    color:#102a43!important;
    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:16px;
    text-decoration:none;
    box-shadow:0 .35rem 1rem rgba(31,41,55,.05);
    transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}

.area-link-card:hover{
    color:#0f5559!important;
    border-color:#bfe7df;
    box-shadow:0 .55rem 1.25rem rgba(18,107,112,.12);
    transform:translateY(-2px);
}

.area-euro-page main a{
    color:#126b70;
}

.area-euro-page main a:hover{
    color:#0f5559;
}

.area-euro-page .btn-primary,
.area-euro-page .btn-outline-secondary:hover{
    color:#fff!important;
    background:#126b70!important;
    border-color:#126b70!important;
}

.area-euro-page .btn-primary,
.area-euro-page .btn-outline-secondary{
    font-weight:800;
    border-radius:999px;
}

.area-euro-page .btn-outline-secondary{
    color:#126b70!important;
    border-color:#126b70!important;
}

.area-euro-page code{
    color:#126b70;
    background:#e6f6f3;
    border-radius:.45rem;
    padding:.1rem .35rem;
    font-weight:700;
}

.area-euro-page .adsense-laterale{
    position:sticky;
    top:1rem;
}

@media(max-width:1199px){
    .area-layout{
        padding-inline:1rem;
    }

    .area-kpi{
        min-height:145px;
        padding:1rem;
    }

    .area-kpi-value{
        font-size:clamp(1.75rem,3vw,2.65rem);
    }

    .area-kpi-label{
        font-size:.68rem;
        letter-spacing:.055em;
    }
}

@media(max-width:991px){
    .area-kpi-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media(max-width:767px){
    .area-layout{
        padding:.75rem .75rem 1.75rem;
    }

    .area-euro-page h1,
    .area-card,
    .area-chart-card,
    .area-action-card,
    .area-five-year{
        border-radius:18px;
    }

    .area-kpi-grid,
    .area-link-grid{
        grid-template-columns:1fr!important;
    }

    .area-chart-head{
        flex-direction:column;
    }

    .area-chart-badge{
        width:max-content;
    }
}
