:root {
    /*Основные*/
    --primary-bg: #ffffff;        
    --primary-text: #101010;      
    --card-bg: #f6f6f9;           
    --accent: #ff7f23;            
    --accent-secondary: #1479fa;  
	--placeholder: #b3b3b3;

    --border-radius: 12px;
    --transition: 0.2s all ease;
}
[data-theme="dark"] {
    --primary-bg: #101010;         
    --primary-text: #f8f9fa;       
    --card-bg: #22232a;            
    --accent: #ffae33;             
    --accent-secondary: #49a7ff;   
	--placeholder: #737373;
	
}
section.text-center img.rounded-circle {
  border: 4px solid #0d6efd;
  box-shadow: 0 2px 16px rgba(13, 110, 253, 0.12);
  transition: box-shadow 0.2s;
}
section.text-center img.rounded-circle:hover {
  box-shadow: 0 4px 32px rgba(13, 110, 253, 0.24);
}
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
}
body{
    display: flex;
    flex-direction: column;
}
/* Стили заголовков */
h1, h2 {
  font-weight: 700;
  letter-spacing: .03em;
  margin-bottom: 0.6em;
}

h1 {
  font-size: 2.2rem;
}
h2 {
  font-size: 1.5rem;
}


.btn {
  margin-bottom: 0.5rem;
  margin-right: 0.5rem;
  border-radius: 25px;
  font-weight: 500;
  padding: 0.5em 1.3em;
  transition: background .15s, color .15s, border .15s;
}

section.text-center .btn-dark {
  background: #24292f;
  border-color: #24292f;
}
section.text-center .btn-dark:hover {
  background: #0d6efd;
  color: #fff;
  border-color: #0d6efd;
}

.lead{
    color: var(--placeholder);
}
ul {
  padding-left: 1.2em !important;
  list-style:none;
  list-style-type: none;
}
ul li {
  margin-bottom: 8px;
  position: relative;
  padding-left: 1em;
}
ul.skills-list li:before {
  content: "\f121";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  margin-right: .6em;
  color: #0d6efd;
  position: relative;
  left: 0;
  margin-left:0px
}

/* Темная тема */
body.dark {
  background: #181d23;
  color: #e8eef6;
}
body.dark .navbar,
body.dark .dropdown-menu {
  background: #1c232b !important;
}

body.dark .btn-outline-primary {
  border-color: #93c5fd !important;
  color: #93c5fd !important;
}
body.dark .btn-outline-primary:hover {
  background: #2563eb !important;
  color: #fff !important;
  border-color: #2563eb !important;
}
a{
	text-decoration: none;
}
a:hover, a:focus, 
.navbar a:hover, .navbar a:focus, 
.dropdown-menu a:hover, .dropdown-menu a:focus {
    color: var(--accent);
    text-decoration: none;
}
body.light {
  background: #f7f9fb;
  color: #23272f;
}
body.light .navbar {
  background: #0d6efd !important;
}

body.light .btn-outline-primary {
  color: #ffffff !important;
  border-color: #0d6efd !important;
}

body.light .btn-outline-primary:hover {
  background: #3c5982 !important;
  color: #fff !important;
}

body .navbar-brand {
  font-weight: 700;
  letter-spacing: 0.05em;
  font-size: 1.35rem;
}

/* Для мобильных - дополнительное скрытие и центрирование */
@media (max-width: 767px) {
  .navbar-nav .nav-item {
    text-align: center !important;
    margin-bottom: 0.3rem;
  }
  section.text-center img.rounded-circle {
    width: 90px !important;
    height: 90px !important;
  }
  main.container {
    padding-top: 1.2em !important;
  }
}

.card {
  border-radius: 22px;
  border-width: 0;
  box-shadow: 0 4px 24px rgba(60, 72, 88, 0.07);
  margin-bottom: 2rem;
  background: var(--card-bg)!important;
	color: var(--primary-text)!important;
}

section:not(:last-child) {
  border-bottom: 1px solid #d8e0ed;
  padding-bottom: 2.2em;
  margin-bottom: 2em;
}
body.dark section:not(:last-child) {
  border-color: #222a34;
}

main.container {
  max-width: 900px;
}

.job-card {
    background: var(--card-bg);
    color: var(--primary-text);
    border-radius: var(--border-radius);
    box-shadow: 0 2px 16px rgba(20, 45, 99, 0.07);
    border: 1px solid var(--accent-secondary);
    margin-bottom: 20px;
    transition: var(--transition);
	text-decoration: none;
	
}

.job-card:hover,
.job-card:focus-within {
    border-color: var(--accent);
    box-shadow: 0 6px 22px #ddd;
}
p {
	text-decoration: none;
}
footer{
	flex-shrink: 0;
    margin-top: auto;  
    width: 100%;
    padding: 20px 0;
	
}