:root {
  --obsidian: #050505;
  --graphite: #27272A;
  --cold-gold: #C6A15B;
  --milk: #FFF8E7;
  --soft-white: rgba(255, 248, 231, .82);
  --line: rgba(198, 161, 91, .22);
  --glass: rgba(255, 248, 231, .06);
  --shadow: 0 24px 70px rgba(0, 0, 0, .42);
}

html { scroll-behavior: smooth; }

body {
  background: var(--obsidian);
  color: var(--soft-white);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: -0.01em;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background:
    radial-gradient(circle at 12% 18%, rgba(198, 161, 91, .16), transparent 28%),
    radial-gradient(circle at 86% 12%, rgba(255, 248, 231, .09), transparent 24%),
    linear-gradient(135deg, #050505 0%, #27272A 46%, #C6A15B 130%, #FFF8E7 160%);
}

body, p, .card-body, .single_footer ul li a, .heading p, .contact_info p, .heading.hbm p {
  color: var(--soft-white);
}

h1, h2, h3, h4, h5, h6,
.heading h1, .heading.hbm h1,
.content_box h6, .contact_info h3,
.single_footer h3, .single_counter,
button.btn.btn-link.btn-block.text-left {
  color: var(--milk);
}

p { font-size: 18px; line-height: 1.75; }

a { color: var(--cold-gold); }
a:hover, .single_footer ul li a:hover { color: var(--milk); }

.header_absolute,
.header_area.sticky {
  background: rgba(5, 5, 5, .82) !important;
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(18px);
  box-shadow: 0 12px 34px rgba(0, 0, 0, .24);
}

.logo { max-width: none; }
.logo a { display: inline-flex; flex-direction: column; line-height: 1; }
.logo h3 {
  color: var(--milk) !important;
  font-size: 25px;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.logo span {
  color: var(--cold-gold);
  font-size: 12px;
  letter-spacing: .34em;
  margin-top: 6px;
  text-transform: uppercase;
}

.main_menu ul li a {
  color: rgba(255, 248, 231, .82);
  font-size: 15px;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.main_menu ul li a:hover { color: var(--cold-gold); }

.slicknav_menu {
  background: transparent;
  padding: 0;
}
.slicknav_btn { background: rgba(198, 161, 91, .16); border: 1px solid var(--line); }
.slicknav_nav { background: rgba(5, 5, 5, .96); border: 1px solid var(--line); border-radius: 18px; margin-top: 14px; padding: 14px; }
.slicknav_nav a { color: var(--milk); border-radius: 12px; }
.slicknav_nav a:hover { background: rgba(198, 161, 91, .15); color: var(--cold-gold); }

.welcome_area {
  min-height: 960px;
  height: auto;
  padding: 150px 0 90px;
  overflow: hidden;
}
.welcome_area::after {
  content: "";
  position: absolute;
  width: 620px;
  height: 620px;
  right: -170px;
  top: 130px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(198, 161, 91, .26), transparent 60%);
  filter: blur(8px);
  z-index: -1;
}
.title h1,
.welcome_area h1 {
  color: var(--milk) !important;
  font-size: clamp(44px, 5vw, 78px);
  line-height: 1.04;
  letter-spacing: -0.055em;
  text-shadow: 0 15px 45px rgba(0, 0, 0, .5);
}
.title h6,
.welcome_area h6 {
  color: rgba(255, 248, 231, .8) !important;
  max-width: 680px;
  font-size: 23px;
  line-height: 1.65;
}
.title::before {
  content: "Atelier privé • Paris • counselgrid.pro";
  display: inline-block;
  color: var(--cold-gold);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .28em;
  text-transform: uppercase;
  margin-bottom: 24px;
}

.apps,
.apps_app,
.feature_tab_img_right,
.feature_tab_img_left,
.mobile_feature_img,
.mobile_feature_img2,
.single_screen {
  position: relative;
}
.apps img,
.apps_app img,
.feature_tab_img_right img,
.feature_tab_img_left img,
.mobile_feature_img img,
.mobile_feature_img2 img,
.feature_img_right,
.feature_img_left,
.single_screen img {
  border-radius: 34px;
  box-shadow: var(--shadow);
  border: 1px solid var(--line);
  background: var(--graphite);
}
.apps img { max-height: 720px; object-fit: cover; }
.feature_img_right,
.feature_img_left { opacity: .92; }

.section-padding,
.section-padding2,
.section-padding-bottom,
.section-padding-bottom2 { position: relative; }

.primary_bg {
  background:
    linear-gradient(135deg, rgba(255, 248, 231, .045), rgba(198, 161, 91, .08)),
    rgba(39, 39, 42, .76);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.heading h1,
.heading.hbm h1 {
  color: var(--milk);
  font-size: clamp(34px, 4vw, 56px);
  line-height: 1.12;
  letter-spacing: -0.045em;
}
.heading p,
.heading.hbm p {
  color: rgba(255, 248, 231, .76);
  font-size: 19px;
  line-height: 1.78;
}
.heading h1::after,
.heading.hbm h1::after {
  content: "";
  display: block;
  width: 72px;
  height: 2px;
  margin-top: 22px;
  background: linear-gradient(90deg, var(--cold-gold), transparent);
}
.text-center .heading h1::after,
.text-center.heading h1::after,
.heading.hbm.text-center h1::after,
.heading.hbm h1::after { margin-left: auto; margin-right: auto; }

.single_core_feature,
.single_about,
.single_more_feature .content_box,
.card,
.contact_info {
  background: linear-gradient(145deg, rgba(255, 248, 231, .07), rgba(255, 248, 231, .025));
  border: 1px solid var(--line);
  border-radius: 26px;
  box-shadow: 0 18px 45px rgba(0, 0, 0, .22);
  transition: transform .35s ease, border-color .35s ease, background .35s ease;
}
.single_core_feature:hover,
.single_about:hover,
.single_more_feature .content_box:hover,
.card:hover,
.contact_info:hover {
  transform: translateY(-7px);
  border-color: rgba(198, 161, 91, .5);
  background: linear-gradient(145deg, rgba(198, 161, 91, .13), rgba(255, 248, 231, .045));
}
.single_about { padding: 45px 35px; min-height: 100%; }
.single_more_feature .content_box { padding: 34px 30px; min-height: 250px; }
.content_box h6 {
  color: var(--cold-gold);
  font-size: 23px;
  line-height: 1.35;
  letter-spacing: -0.02em;
}
.content_box p { color: rgba(255, 248, 231, .74); font-size: 17px; line-height: 1.72; }

.feature_area { overflow: hidden; }
.feature_area::before,
.about_area::before,
.faq_area::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 20% 12%, rgba(198, 161, 91, .08), transparent 30%);
  z-index: -1;
}

.about_area { padding-top: 80px; }
.single_about.about_line:after,
.single_about.about_line.about_line2:after { opacity: .2; filter: sepia(1) saturate(.8); }

.screen_carousel .owl-dots .owl-dot { background: rgba(255, 248, 231, .18); }
.screen_carousel .owl-dots .owl-dot.active { background: var(--cold-gold); }
.single_screen img { max-height: 560px; object-fit: cover; }

.faq_area .card {
  background: rgba(255, 248, 231, .045);
  border-color: var(--line) !important;
  overflow: hidden;
}
.card-header { background: transparent; }
button.btn.btn-link.btn-block.text-left {
  color: var(--milk);
  white-space: normal;
  padding-right: 58px;
}
.card-body { color: rgba(255, 248, 231, .72); }
.faq_area button.btn.btn-link:after {
  content: "⌄";
  font-family: inherit;
  color: var(--cold-gold);
  font-size: 26px;
  line-height: 1;
}

.apps_area { padding-top: 70px; }

.contact_area {
  background:
    linear-gradient(135deg, rgba(5, 5, 5, .88), rgba(39, 39, 42, .88)),
    radial-gradient(circle at 85% 20%, rgba(198, 161, 91, .14), transparent 30%);
  border-top: 1px solid var(--line);
  padding: 90px 0;
}
.contact_form .form-control {
  background: rgba(255, 248, 231, .08);
  border: 1px solid rgba(198, 161, 91, .27);
  border-radius: 18px;
  color: var(--milk);
  padding: 16px 18px;
  min-height: 58px;
}
.contact_form .form-control::placeholder { color: rgba(255, 248, 231, .52); }
.contact_form .form-control:focus {
  border-color: var(--cold-gold);
  box-shadow: 0 0 0 4px rgba(198, 161, 91, .13);
  background: rgba(255, 248, 231, .11);
  color: var(--milk);
}
.contact_form .btn-primary {
  background: linear-gradient(135deg, var(--cold-gold), #FFF8E7);
  color: #050505;
  border: none;
  border-radius: 999px;
  padding: 15px 34px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  box-shadow: 0 16px 35px rgba(198, 161, 91, .24);
}
.contact_form .btn-primary:hover {
  background: linear-gradient(135deg, #FFF8E7, var(--cold-gold));
  color: #050505;
  transform: translateY(-2px);
}
.contact_info { padding: 36px; text-align: left !important; }
.contact_info p strong { color: var(--cold-gold); }

.footer {
  background: linear-gradient(180deg, #050505, #111113 65%, #050505);
  border-top: 1px solid var(--line);
}
.single_footer h3 { color: var(--cold-gold); }
.single_footer ul li p,
p.footer_pera { color: rgba(255, 248, 231, .68); font-size: 16px; line-height: 1.72; }
.single_footer ul li a { color: rgba(255, 248, 231, .72); font-size: 17px; }
.copyright {
  background: #050505;
  border-top: 1px solid rgba(198, 161, 91, .17);
}
.copyright p { color: rgba(255, 248, 231, .62); font-size: 15px; }
.copyright a { color: var(--cold-gold); }

@media screen and (min-width: 1440px) {
  .welcome_area { min-height: 970px; }
}

@media screen and (max-width: 1023px) {
  .welcome_area { text-align: center; padding-top: 170px; }
  .title::before { letter-spacing: .18em; }
  .title h6, .welcome_area h6 { margin: 0 auto; }
  .apps { margin-top: 44px; }
  .feature_img_right, .feature_img_left { display: none; }
  .mobile_feature_img, .mobile_feature_img2 { margin-bottom: 45px; }
  .more_feature_area, .apps_app { display: block; }
}

@media screen and (max-width: 767px) {
  p { font-size: 16px; }
  .welcome_area { padding: 145px 0 70px; }
  .title h1, .welcome_area h1 { font-size: 38px; line-height: 1.12; }
  .title h6, .welcome_area h6 { font-size: 18px; line-height: 1.55; }
  .section-padding { padding: 72px 0; }
  .section-padding2 { padding: 72px 0 46px; }
  .single_core_feature { padding: 34px 24px; }
  .single_about { margin-bottom: 22px; }
  .heading h1, .heading.hbm h1 { font-size: 32px; }
  .heading p, .heading.hbm p { font-size: 17px; line-height: 1.65; }
  .contact_info { margin-top: 28px; }
}
