/* ==========================================
   HERO
========================================== */

.feed-hero{
    position:relative;
    overflow:hidden;

    padding:60px;

    border-radius:30px;

    color:#fff;

    background:
        radial-gradient(circle at top right,
        rgba(255,255,255,.18),
        transparent 35%),
        linear-gradient(135deg,#1d4ed8,#3b82f6);

    box-shadow:0 18px 50px rgba(30,64,175,.28);
}

/* декоративное свечение */

.feed-hero::before{

    content:"";

    position:absolute;

    top:-120px;
    right:-120px;

    width:320px;
    height:320px;

    border-radius:50%;

    background:rgba(255,255,255,.12);

    filter:blur(80px);
}

/* ---------- HEADER ---------- */

.hero-header{

    display:grid;

    grid-template-columns:minmax(0,1fr) 420px;

    align-items:start;

    gap:70px;

    position:relative;

    z-index:2;

    margin-bottom:60px;
}

.hero-left{

    display:flex;

    flex-direction:column;

    justify-content:center;

    min-width:0;
}

.hero-badge{

    display:inline-flex;

    align-items:center;

    padding:10px 18px;

    border-radius:999px;

    background:rgba(255,255,255,.15);

    backdrop-filter:blur(18px);

    font-size:15px;

    font-weight:700;
}

.feed-hero h1{

    margin:28px 0 16px;

    font-size:64px;

    line-height:1.05;

    font-weight:800;

    letter-spacing:-1px;
}

.feed-hero p{

    font-size:24px;

    color:rgba(255,255,255,.88);

    line-height:1.5;
}

/* ---------- WEATHER ---------- */

.hero-weather{

    width:320px;

    padding:24px;

    flex-shrink:0;

    border-radius:24px;

    background:rgba(255,255,255,.12);

    border:1px solid rgba(255,255,255,.15);

    backdrop-filter:blur(18px);

    box-shadow:0 10px 30px rgba(0,0,0,.15);
}

.weather-current{

    text-align:center;

    padding-bottom:22px;

    border-bottom:1px solid rgba(255,255,255,.15);
}

.weather-temp{

    font-size:60px;

    font-weight:800;

    line-height:1;

    text-align:center;
}

.weather-icon{

    font-size:44px;

    margin-top:10px;

    margin-bottom:18px;

    text-align:center;

    line-height:1;
}

.weather-desc{

    margin-top:12px;

    font-size:18px;

    color:rgba(255,255,255,.92);
}

.weather-details{

    margin-top:18px;
}

.weather-item{

    display:flex;

    justify-content:space-between;

    padding:10px 0;

    border-bottom:1px solid rgba(255,255,255,.10);
}

.weather-item:last-child{

    border-bottom:none;
}

.weather-label{

    color:rgba(255,255,255,.72);

    font-size:15px;
}

.weather-value{

    color:#fff;

    font-size:16px;

    font-weight:700;
}

/* ---------- STATS ---------- */

.hero-stats{

    margin-top:45px;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:22px;
}

.stat-card{

    padding:28px;

    text-align:center;

    border-radius:24px;

    background:rgba(255,255,255,.12);

    border:1px solid rgba(255,255,255,.12);

    backdrop-filter:blur(20px);

    transition:.25s;
}

.stat-card:hover{

    transform:translateY(-5px);

    background:rgba(255,255,255,.18);
}

.stat-number{

    font-size:56px;

    font-weight:800;

    color:#fff;
}

.stat-label{

    margin-top:10px;

    font-size:18px;

    color:rgba(255,255,255,.85);
}

/* ---------- MOBILE ---------- */

@media(max-width:960px){

.hero-header{

    flex-direction:column;
}

.hero-weather{

    width:100%;
}

.hero-stats{

    grid-template-columns:1fr;
}

.feed-hero h1{

    font-size:42px;
}

.feed-hero p{

    font-size:20px;
}
/* ===== SVG иконка погоды ===== */

.weather-current{
    display:flex;
    flex-direction:column;
    align-items:center;
}

.weather-icon{
    width:90px;
    height:90px;
    margin-top:10px;

    display:flex;
    justify-content:center;
    align-items:center;
}

.weather-icon svg{
    width:90px;
    height:90px;
    filter:drop-shadow(0 8px 18px rgba(0,0,0,.15));
}

.weather-text{
    text-align:center;
    margin:10px 0 22px;
    font-size:17px;
    font-weight:600;
    color:rgba(255,255,255,.95);
}

.weather-details{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.weather-row{
    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:10px 0;

    border-top:1px solid rgba(255,255,255,.12);

    font-size:18px;
}

.weather-row span:last-child{
    font-weight:700;
    color:#fff;
}

}
