:root {
    --base-bg: #495661;      /* основной фон */
    --base-bg-dark: #495661; /* чуть темнее — для футера */
    --text-main: #f2f2f2;    /* светлый текст */
    --text-muted: #e0e0e0;   /* второстепенный текст */
    --accent: #ffffff;       /* белый акцент */
    --overlay: rgba(255,255,255,0.05);
}

body {
    background-color: var(--base-bg);
    color: var(--text-main);
    font-family: "Inter", sans-serif;
}

a, .nav-link {
    color: var(--text-main);
    text-decoration: none;
    transition: opacity .3s ease;
}

a:hover, .nav-link:hover { opacity: 0.8; }

.navbar {
    background: transparent;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    backdrop-filter: blur(4px);
}

/* === HERO === */
.hero {
    position: relative;
    padding: clamp(80px, 15vh, 160px) 0;
    overflow: hidden;
}

/* Контейнер фона */
.stars {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
    z-index: -2;
}


/* 100 звезд, сконцентрированных ближе к полосе */
.stars::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 2px;
    border-radius: 50%;
    background: transparent;
    opacity: 0.95;
    box-shadow:
            1309px 842px 0px 0px rgba(255,255,255,.92),
            1385px 797px 0px 3px rgba(255,255,255,.98),
            1209px 650px 0px 0px rgba(255,255,255,.92),
            1149px 710px 0px 1px rgba(200,220,255,.95),
            1116px 563px 0px 1px rgba(255,255,255,.98),
            1554px 685px 0px 1px rgba(255,240,205,.95),
            569px 1018px 0px 0px rgba(210,226,255,.88),
            198px 1193px 0px 1px rgba(200,220,255,.95),
            541px 903px 0px 1px rgba(210,226,255,.88),
            161px 683px 0px 1px rgba(255,246,222,.88),
            1182px 706px 0px 2px rgba(255,246,222,.88),
            163px 952px 0px 1px rgba(255,240,205,.95),
            569px 554px 0px 0px rgba(235,244,255,.90),
            1372px 725px 0px 1px rgba(200,220,255,.95),
            1327px 841px 0px 2px rgba(255,255,255,.98),
            946px 825px 0px 1px rgba(235,244,255,.90),
            1402px 530px 0px 0px rgba(255,255,255,.92),
            1648px 808px 0px 0px rgba(255,255,255,.92),
            432px 1004px 0px 2px rgba(210,226,255,.88),
            810px 668px 0px 2px rgba(255,246,222,.88),
            285px 879px 0px 1px rgba(255,240,205,.95),
            1838px 734px 0px 1px rgba(235,244,255,.90),
            283px 813px 0px 1px rgba(255,255,255,.98),
            1285px 662px 0px 1px rgba(255,240,205,.95),
            1221px 809px 0px 1px rgba(255,255,255,.92),
            1393px 697px 0px 2px rgba(255,246,222,.88),
            1574px 560px 0px 1px rgba(255,255,255,.92),
            1953px 470px 0px 3px rgba(255,240,205,.95),
            1990px 427px 0px 1px rgba(255,240,205,.95),
            1723px 573px 0px 2px rgba(235,244,255,.90),
            313px 809px 0px 2px rgba(200,220,255,.95),
            663px 856px 0px 1px rgba(255,246,222,.88),
            1799px 817px 0px 0px rgba(255,255,255,.92),
            175px 874px 0px 2px rgba(255,255,255,.92),
            1557px 535px 0px 2px rgba(235,244,255,.90),
            542px 806px 0px 2px rgba(255,240,205,.95),
            1975px 563px 0px 3px rgba(200,220,255,.95),
            638px 976px 0px 3px rgba(255,250,240,.98),
            764px 614px 0px 0px rgba(255,255,255,.92),
            692px 855px 0px 0px rgba(235,244,255,.90),
            1205px 692px 0px 2px rgba(255,255,255,.92),
            1854px 600px 0px 1px rgba(255,255,255,.98),
            1052px 731px 0px 0px rgba(210,226,255,.88),
            497px 1044px 0px 2px rgba(255,255,255,.98),
            193px 1020px 0px 1px rgba(255,255,255,.92),
            1379px 733px 0px 4px rgba(255,232,170,.96),
            124px 801px 0px 0px rgba(235,244,255,.90),
            1098px 780px 0px 1px rgba(235,244,255,.90),
            570px 530px 0px 0px rgba(255,255,255,.92),
            103px 982px 0px 4px rgba(255,232,170,.96),
            1984px 719px 0px 0px rgba(210,226,255,.88),
            985px 862px 0px 1px rgba(255,255,255,.98),
            337px 561px 0px 1px rgba(255,240,205,.95),
            584px 1101px 0px 2px rgba(200,220,255,.95),
            1604px 383px 0px 0px rgba(235,244,255,.90),
            1983px 440px 0px 0px rgba(255,255,255,.92),
            1531px 596px 0px 1px rgba(235,244,255,.90),
            116px 953px 0px 1px rgba(235,244,255,.90),
            140px 727px 0px 0px rgba(235,244,255,.90),
            1185px 565px 0px 1px rgba(255,255,255,.92),
            858px 652px 0px 2px rgba(255,232,170,.96),
            1371px 492px 0px 2px rgba(255,246,222,.88),
            810px 906px 0px 1px rgba(255,255,255,.92),
            19px 1083px 0px 1px rgba(255,255,255,.92),
            150px 737px 0px 2px rgba(255,232,170,.96),
            1800px 517px 0px 0px rgba(235,244,255,.90),
            897px 859px 0px 3px rgba(255,250,240,.98),
            1083px 513px 0px 0px rgba(255,246,222,.88),
            1908px 358px 0px 0px rgba(255,255,255,.92),
            1520px 324px 0px 1px rgba(255,246,222,.88),
            1238px 708px 0px 2px rgba(255,246,222,.88),
            1035px 845px 0px 1px rgba(255,255,255,.92),
            189px 716px 0px 0px rgba(235,244,255,.90),
            1304px 459px 0px 0px rgba(210,226,255,.88),
            1129px 647px 0px 0px rgba(235,244,255,.90),
            1117px 523px 0px 1px rgba(200,220,255,.95),
            1131px 742px 0px 0px rgba(255,255,255,.92),
            1840px 609px 0px 0px rgba(235,244,255,.90),
            1365px 849px 0px 3px rgba(255,250,240,.98),
            316px 1019px 0px 1px rgba(255,255,255,.98),
            1805px 478px 0px 1px rgba(255,240,205,.95),
            1642px 638px 0px 3px rgba(255,255,255,.98),
            546px 941px 0px 2px rgba(255,240,205,.95),
            455px 1028px 0px 1px rgba(255,240,205,.95),
            716px 697px 0px 0px rgba(235,244,255,.90),
            816px 1005px 0px 0px rgba(255,255,255,.92),
            1980px 539px 0px 1px rgba(255,246,222,.88),
            1923px 399px 0px 0px rgba(255,246,222,.88),
            365px 498px 0px 0px rgba(210,226,255,.88),
            707px 586px 0px 3px rgba(255,240,205,.95),
            1241px 746px 0px 1px rgba(255,255,255,.92),
            1451px 623px 0px 1px rgba(235,244,255,.90),
            745px 460px 0px 0px rgba(255,255,255,.92),
            1474px 772px 0px 0px rgba(210,226,255,.88),
            668px 696px 0px 0px rgba(210,226,255,.88),
            1387px 713px 0px 3px rgba(200,220,255,.95),
            1165px 633px 0px 0px rgba(235,244,255,.90),
            880px 923px 0px 1px rgba(255,246,222,.88),
            952px 534px 0px 1px rgba(235,244,255,.90),
            1349px 729px 0px 0px rgba(255,246,222,.88);
    animation: twinkle-a 8s ease-in-out infinite alternate;
}

/* Вторая звёздная сетка — ещё 100 звезд */
.stars-2 {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
    z-index: -2;
}

.stars-2::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 1.5px;
    height: 1.5px;
    border-radius: 50%;
    background: transparent;
    opacity: 0.8;
    box-shadow:
            191px 481px 0px 2px rgba(235,244,255,.90),
            301px 50px 0px 0px rgba(210,226,255,.88),
            1251px 149px 0px 1px rgba(235,244,255,.90),
            1471px 786px 0px 1px rgba(235,244,255,.90),
            1343px 11px 0px 1px rgba(255,255,255,.98),
            360px 1060px 0px 1px rgba(235,244,255,.90),
            1878px 248px 0px 1px rgba(210,226,255,.88),
            1367px 1087px 0px 1px rgba(210,226,255,.88),
            1254px 1033px 0px 2px rgba(200,220,255,.95),
            913px 325px 0px 3px rgba(255,240,205,.95),
            530px 506px 0px 2px rgba(210,226,255,.88),
            1283px 489px 0px 0px rgba(255,246,222,.88),
            480px 556px 0px 0px rgba(255,255,255,.92),
            283px 308px 0px 0px rgba(235,244,255,.90),
            1446px 438px 0px 0px rgba(255,246,222,.88),
            1111px 954px 0px 1px rgba(210,226,255,.88),
            797px 1196px 0px 2px rgba(210,226,255,.88),
            976px 12px 0px 0px rgba(210,226,255,.88),
            1747px 858px 0px 2px rgba(200,220,255,.95),
            1638px 451px 0px 1px rgba(210,226,255,.88),
            994px 59px 0px 1px rgba(210,226,255,.88),
            1483px 338px 0px 2px rgba(200,220,255,.95),
            1093px 55px 0px 1px rgba(255,255,255,.92),
            171px 877px 0px 1px rgba(255,255,255,.98),
            102px 532px 0px 1px rgba(210,226,255,.88),
            669px 691px 0px 1px rgba(210,226,255,.88),
            516px 167px 0px 1px rgba(255,255,255,.92),
            1949px 716px 0px 0px rgba(255,255,255,.92),
            1544px 63px 0px 0px rgba(255,255,255,.92),
            1272px 312px 0px 0px rgba(255,255,255,.92),
            1155px 446px 0px 2px rgba(255,240,205,.95),
            343px 234px 0px 2px rgba(255,232,170,.96),
            1185px 52px 0px 0px rgba(210,226,255,.88),
            812px 406px 0px 0px rgba(235,244,255,.90),
            208px 617px 0px 2px rgba(255,255,255,.92),
            1630px 1159px 0px 0px rgba(210,226,255,.88),
            1354px 758px 0px 0px rgba(255,246,222,.88),
            25px 860px 0px 1px rgba(255,246,222,.88),
            1301px 941px 0px 2px rgba(235,244,255,.90),
            1502px 1068px 0px 2px rgba(210,226,255,.88),
            952px 892px 0px 2px rgba(255,246,222,.88),
            1744px 502px 0px 0px rgba(210,226,255,.88),
            499px 951px 0px 1px rgba(210,226,255,.88),
            688px 58px 0px 2px rgba(255,255,255,.98),
            998px 434px 0px 1px rgba(255,240,205,.95),
            572px 565px 0px 1px rgba(235,244,255,.90),
            175px 494px 0px 2px rgba(235,244,255,.90),
            1414px 975px 0px 3px rgba(255,240,205,.95),
            1623px 35px 0px 0px rgba(210,226,255,.88),
            1416px 498px 0px 0px rgba(255,246,222,.88),
            969px 1133px 0px 1px rgba(255,246,222,.88),
            720px 929px 0px 0px rgba(235,244,255,.90),
            247px 394px 0px 0px rgba(235,244,255,.90),
            392px 443px 0px 2px rgba(255,246,222,.88),
            205px 397px 0px 0px rgba(235,244,255,.90),
            619px 28px 0px 2px rgba(255,246,222,.88),
            93px 111px 0px 1px rgba(235,244,255,.90),
            1306px 1005px 0px 1px rgba(200,220,255,.95),
            582px 961px 0px 1px rgba(235,244,255,.90),
            1977px 105px 0px 2px rgba(190,215,255,.98),
            233px 133px 0px 1px rgba(255,255,255,.92),
            310px 305px 0px 3px rgba(255,232,170,.96),
            508px 242px 0px 2px rgba(200,220,255,.95),
            1220px 462px 0px 1px rgba(210,226,255,.88),
            608px 878px 0px 0px rgba(255,255,255,.92),
            1248px 203px 0px 0px rgba(255,246,222,.88),
            1352px 166px 0px 0px rgba(255,255,255,.92),
            320px 5px 0px 1px rgba(210,226,255,.88),
            596px 66px 0px 0px rgba(255,246,222,.88),
            1439px 929px 0px 1px rgba(255,240,205,.95),
            1613px 405px 0px 1px rgba(235,244,255,.90),
            1326px 305px 0px 1px rgba(255,255,255,.98),
            122px 339px 0px 0px rgba(255,246,222,.88),
            899px 254px 0px 2px rgba(200,220,255,.95),
            824px 557px 0px 1px rgba(210,226,255,.88),
            164px 81px 0px 2px rgba(200,220,255,.95),
            512px 52px 0px 0px rgba(255,255,255,.92),
            1566px 551px 0px 1px rgba(235,244,255,.90),
            963px 1062px 0px 2px rgba(255,246,222,.88),
            371px 1198px 0px 1px rgba(210,226,255,.88),
            1984px 186px 0px 1px rgba(255,246,222,.88),
            657px 214px 0px 0px rgba(210,226,255,.88),
            590px 820px 0px 1px rgba(255,255,255,.92),
            644px 516px 0px 0px rgba(210,226,255,.88),
            1771px 1053px 0px 0px rgba(210,226,255,.88),
            846px 111px 0px 0px rgba(210,226,255,.88),
            1280px 905px 0px 0px rgba(235,244,255,.90),
            1899px 589px 0px 2px rgba(255,240,205,.95),
            248px 59px 0px 2px rgba(235,244,255,.90),
            1453px 324px 0px 0px rgba(210,226,255,.88),
            190px 460px 0px 0px rgba(255,255,255,.92),
            1326px 315px 0px 3px rgba(190,215,255,.98),
            1042px 559px 0px 2px rgba(255,240,205,.95),
            499px 935px 0px 1px rgba(235,244,255,.90),
            1887px 1040px 0px 3px rgba(255,255,255,.98),
            565px 849px 0px 2px rgba(255,250,240,.98),
            547px 5px 0px 1px rgba(200,220,255,.95),
            1187px 1002px 0px 0px rgba(210,226,255,.88),
            706px 680px 0px 2px rgba(255,240,205,.95),
            932px 659px 0px 2px rgba(255,232,170,.96);
    animation: twinkle-b 12s ease-in-out infinite alternate;
}

.navbar { /* это фиксит проблему с тем что dropdown закрывали div с луной звездами и прочей фигней */
    position: relative;
    z-index: 10;
}

/* Очень слабая дополнительная дымка */
.stars-2::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
            radial-gradient(circle at 35% 60%, rgba(190, 210, 255, 0.08), transparent 22%),
            radial-gradient(circle at 60% 45%, rgba(255, 228, 180, 0.06), transparent 18%),
            radial-gradient(circle at 75% 35%, rgba(220, 235, 255, 0.05), transparent 16%);
    filter: blur(22px);
    opacity: 0.8;
}

@keyframes twinkle-a {
    0%   { opacity: 0.72; transform: scale(1); }
    50%  { opacity: 1; transform: scale(1.015); }
    100% { opacity: 0.8; transform: scale(1); }
}

@keyframes twinkle-b {
    0%   { opacity: 0.45; transform: scale(1); }
    50%  { opacity: 0.8; transform: scale(1.02); }
    100% { opacity: 0.55; transform: scale(1); }
}

@keyframes milky-drift {
    0%   { transform: rotate(-18deg) scale(1.15) translate3d(-1.5%, -1%, 0); }
    100% { transform: rotate(-14deg) scale(1.2) translate3d(1.5%, 1%, 0); }
}

.moon {
    position: absolute;
    right: min(250px, 50vw);
    top: clamp(40px, 12vh, 120px);
    width: clamp(100px, 15vw, 220px);
    /*aspect-ratio: 1 / 1;*/
    /*border-radius: 50%;*/
    /*background: radial-gradient(circle at 30% 30%, #dcdcdc 
    20%, #c8c8c8 40%, #b0b0b0 70%, #9a9a9a 100%);*/
    /*box-shadow: 0 0 40px rgba(255,255,255,0.15);*/
    z-index: -1;
}


.post-bg {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 220px;
    
    z-index: -1;
}

/*.post-bg-right-down {*/
/*    position: absolute;*/
/*    right: max(24px, 6vw);*/
/*    bottom: -100vh;*/
/*    width: clamp(100px, 40vw, 800px);*/
/*    height: auto;*/
/*    opacity: .40;*/
/*    pointer-events: none;*/
/*    z-index: -1;*/
/*    overflow-x: hidden;*/
/*}*/

.post-bg-right-down {
    position: absolute;
    right: -300px;
    top: 450px;
    opacity: .08;
    pointer-events: none;
    z-index: -1;
}

body{
    overflow-x: hidden;
}

@keyframes floaty {
    0%,100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}

.form-control {
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.15);
    color: var(--text-main);
}

.form-control::placeholder { color: var(--text-muted); }

.form-control:focus {
    background: rgba(255,255,255,0.1);
    border-color: rgba(255,255,255,0.35);
    box-shadow: 0 0 0 0.2rem rgba(255,255,255,0.05);
}

.btn-light {
    background: #f1f1f1;
    color: #222;
    border: none;
    transition: all .3s ease;
}
.btn-light:hover {
    background: #fff;
    box-shadow: 0 0 0 8px var(--overlay);
}

.card {
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.1);
    transition: transform .3s ease, border-color .3s ease;
}

.section-title {
    border-left: 2px solid rgba(255,255,255,0.2);
    padding-left: .75rem;
}

.seal {
    position: fixed;
    right: -80px;
    bottom: -80px;
    width: 520px;
    opacity: 0.07;
    pointer-events: none;
    z-index: 0;
    animation: breathe 10s ease-in-out infinite;
}

@keyframes breathe {
    0%,100% { transform: scale(1); }
    50% { transform: scale(1.02); }
}

footer {
    background: var(--base-bg-dark);
    border-top: 1px solid rgba(255,255,255,0.08);
}