/* =========================================================
   SWEET GEORGIA CORE CSS
   Version: 2.0
   Global base + unified header system
   ========================================================= */
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css');
/* === RESET === */
*,
*::before,
*::after {
    box-sizing: border-box;
}
html, body {
    margin: 0;
    padding: 0;
}
img {
    max-width: 100%;
    display: block;
}
button {
    font: inherit;
    background: none;
    border: none;
    cursor: pointer;
}
a {
    text-decoration: none;
    color: inherit;
}
/* ==== DESIGN TOKENS === */
:root {
  /* --- ГРУППА 1: FRAME (HEADER & FOOTER) --- */
  /* Глубокий базальтовый, цвет стен храма Метехи */
  --sg-frame-bg: #2F353B; 
  /* Чистый светлый для навигации в темном хедере */
  --sg-frame-text: #F8F9FA; 
  /* Приглушенный для копирайта и второстепенных ссылок */
  --sg-frame-text-muted: rgba(248, 249, 250, 0.7); 

  /* --- ГРУППА 2: BODY (ОСНОВНОЙ КОНТЕНТ) --- */
  /* Светлый песчаник, основной фон страницы */
  --sg-body-bg: #F5F2ED; 
  /* Почти черный антрацит, цвет главных заголовков (в тон хедера) */
  --sg-text-headline: #1A1D21; 
  /* Пыльный серый с теплым подтоном для подзаголовков */
  --sg-text-subheadline: #6D7278; 
  /* Основной читабельный текст */
  --sg-text-main: #3C4043; 

  /* --- ГРУППА 3: BLOCKS (ГРАДИЕНТНЫЕ ПЛАШКИ) --- */
  /* Начало градиента (чуть темнее фона страницы) */
  --sg-block-grad-start: #EADDCD; 
  /* Конец градиента (более плотный тон камня) */
  --sg-block-grad-end: #D9CEC1; 
  /* Текст внутри блоков (глубокий коричнево-серый) */
  --sg-block-text: #4A4540; 

  /* --- ГРУППА 4: ACCENTS (БРЕНД И ДИНАМИКА) --- */
  /* Бирюза Куры, главный акцент (кнопки, активная локаль) */
  --sg-accent-primary: #00A896; 
  /* Тбилисская терракота, для иконок, ховеров и акцентов в карточках */
  --sg-accent-secondary: #C05E4E; 

  /* --- ГРУППА 5: BORDERS & DIVIDERS --- */
  /* Линия для разделения элементов в навигации */
  --sg-border-light: rgba(0, 0, 0, 0.08); 
  /* Контрастная линия для темных областей */
  --sg-border-on-dark: rgba(255, 255, 255, 0.1); 
	
		/*hover and stricts*/
	--sg-hover-light: #055149;
	--sg-hover-lighter: #dd7b23;
}
/*
фон шапки, подвала, зоголовков 1 и 2					--sg-primary-color   
заголовки 3 и 4																--sg-primary-dark
ссылки																				--sg-link-color
тексты на главном фоне												--sg-fone-text-color
текст																					--sg-text-color
текст на мягком фоне													--sg-soft-text-color
текст на темном фоне													--sg-dark-text-color
мягкий фон																		--sg-primary-soft
темный фон																		--sg-primary-dark
границы (3 варианта)													--sg-border-main, --sg-border-soft, --sg-border-dark

*/
/*fonts*/
:root {
    --font-base: 'Inter', sans-serif;
    --font-ka: 'Noto Sans Georgian', sans-serif;
}
/*blocks*/
:root {	
		--header-height: 90px;
    --container-width: 1280px;
}
/* === TYPOGRAPHY === */
html {
    font-family: var(--font-base);
    color: var(--sg-text-main);
    background: var(--sg-body-bg);
}
html[lang="ka"] {
    font-family: var(--font-ka);
}
body {
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4 {
    margin: 0;
    font-weight: var(--sg-h-weight);
		color: var(--sg-text-headline);
}
h3, h4 {color: var(--sg-text-subheadline);}
p {
    margin: 0;
    color: var(--sg-text-main); 
}
a{color: var(--sg-accent-primary);}
/* === CONTAINER === */
.container {
    width: 100%; 
    max-width: var(--container-width);
    margin: 0 auto;
    padding: 0 40px;
}
.page{
	padding-top: var(--header-height);
	margin-bottom: 20px;
	min-height: calc(100vh - var(--header-height) - 4px);
}
/* === UNIFIED HEADER (HERO SYSTEM) === */
.hdr {
    position: relative;
    width: 100%;
		padding: 0 20px;
		color: var(--sg-frame-text);
		background-color: var(--sg-frame-bg);
}
/* Compact version for inner pages */
.hdr--compact {
    height: var(--header-height);
		width: 100% !important;		
		position: fixed; 
    top: 0;
    left: 0;	
		z-index: 1000;
}


/* NAV PANEL */
.hdr__nav, .hero__nav {
	width: 100%;
    position: relative;
    height: var(--header-height);
    display: flex;
    align-items: center;
    justify-content: space-between;
		flex-wrap: nowrap;
		gap: 18px;
}
/* ==== NAVIGATION === */
.nav {
    display: flex;
		align-items: center; 
    gap: 28px;
		white-space: nowrap;
    flex: 1 1 auto;
    min-width: 0;   /* ВАЖНО */
/*		overflow: hidden; */
}
html[lang="ka"] .nav {
    gap: 14px;
}
.nav a,
.nav-dd__btn  { 
    font-size: 14px;
    letter-spacing: .06em;
		text-decoration: none;
    color: inherit;
    background: inherit;
    border: none;
    cursor: pointer;
    /*padding: 0;		*/
    transition: opacity .2s ease;
}
.nav a:hover,
.nav-dd__btn:hover {
    opacity: .7;
		color:var(--sg-accent-primary);
}
/* DROPDOWN */
.nav-dd { 
    position: relative;
}
.nav-dd__menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 200px;
		padding: 10px;
		background: var(--sg-body-bg);
		color: var(--sg-text-subheadline);
    border-radius: 12px;
    box-shadow: 0 12px 35px rgba(0,0,0,0.18);

    padding: 10px 0;
    display: none;
    z-index: 2000;
}
.nav-dd.is-open .nav-dd__menu {
    display: block;
}
.nav-dd__item {
    display: block;
    padding: 8px 16px;
/*    color: #333;*/
    font-size: 14px;
    text-decoration: none;
}
.nav-dd__item:hover {
    background: var(--sg-primary-dark);
		color:var(--sg-accent-primary);
}
 /* === BURGER === */
.burger {
    display: none;
		flex: 0 0 auto;
    width: 30px;
    height: 22px;
    flex-direction: column;
    justify-content: space-between;
    padding: 0;
}
.burger span {
    height: 2px;
    width: 100%;
    background: var(--sg-frame-text);
}
/* ==== BRAND + LOCALE === */
.brand-locale {
    display: flex;
		flex: 0 0 auto;
		white-space: nowrap;
    align-items: center;
    gap: 14px;
}
.brand {
    display: flex;
    flex-direction: column;
}
.brand__title {
    font-size: 20px;
    font-weight: 600;
		color: var(--sg-accent-primary);
}
.brand__subtitle {
    font-size: 14px;
    opacity: .8;
}
.brand__title,
.brand__subtitle {
    white-space: nowrap;
}
/* === AUTH ===*/
.auth-bttn{
	height: 30px;
	width: 30px;
	border-radius: 50%;
	border: 2px solid var(--sg-frame-text);
	overflow: hidden;
}
.auth-bttn > *{color:var(--sg-frame-text);}
.left-hdr{display: flex; gap: 20px; align-items: center;}
/* === LANGUAGE DROPDOWN (главный стиль) === */
.lang-dd {
    position: relative;
}
.lang-dd__btn {
    height: 30px;
    display: inline-flex;
    align-items: center;
    gap: 6px;

    padding: 0 10px;
		margin-left: 10px;
    border-radius: 10px;

    background: var(--sg-primary-soft);
		color: var(--sg-accent-primary);
    border: 1px solid var(--sg-border-main);

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.04em;
}
.lang-dd__menu {
    position: absolute;
    top: 36px;
    left: 0;

    min-width: 170px;
    padding: 6px;

    border-radius: 10px;

    background: var(--sg-primary-soft);
    backdrop-filter: blur(10px);

    border: 1px solid var(--sg-border-main);

    box-shadow: 0 10px 28px rgba(0,0,0,0.12);

    display: none;
    z-index: 200;
}
.lang-dd.is-open .lang-dd__menu {
    display: block;
}
.lang-dd__item {
    width: 100%;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 10px;
    border-radius: 8px;
    background: transparent;
    border: none;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
}
.lang-dd__item:hover {
    background: rgba(0,0,0,0.06);
}
.lang-dd__item.is-active {
    background: rgba(0,0,0,0.10);
}
.lang-dd__itemcode {
    font-weight: 600;
		color:var(--sg-accent-secondary);
}
.lang-dd__itemname {
    opacity: .8;
}
/* === MOBILE MENU ==== */
.mobile-menu {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.25);
    backdrop-filter: blur(4px);

    opacity: 0;
    pointer-events: none;
    transition: opacity .25s ease;
    z-index: 999;
}
.mobile-menu__panel {
    position: absolute;
    top: 0;
    left: -320px;
    width: 280px;
    height: 100%;

 /*   padding-top: 0;
		padding-bottom: 0;*/

    display: flex;
    flex-direction: column;
/*    gap: 15px;*/

    transition: left .3s ease;
		
		overflow-y: auto;
}
.mobile-menu__top {
    position: sticky;
    top: 0;
    padding: 18px 20px;
    background: var(--sg-frame-bg);
    backdrop-filter: blur(6px);
    z-index: 5;

}
.mobile-menu__title {
    font-size: 18px;
    font-weight: 700;
		color: var(--sg-primary-color);
}
.mobile-menu__group{
    display:flex;
    flex-direction:column;
    gap:12px;

    padding:12px 0;
    background: rgba(0,0,0,0.12);
    border-radius:6px;
}
.mobile-menu__section {
    padding: 18px 0;
    display: flex;
    flex-direction: column;
		flex: 0 0 auto;
    gap: 12px;
		
}
.mobile-menu__section--main {
    flex: 1 1 auto;
}
.mobile-menu__link,
.mobile-menu__panel a {
    font-size: 16px;
    padding: 15px 25px;
		color: var(--sg-frame-text);
    background: var(--sg-frame-bg);		
}
/* BOTTOM BAR */
.mobile-menu__bottom {
    position: sticky;
    bottom: 0;
    padding: 14px 20px;
    background: var(--sg-bg-color);
		color: var(--sg-primary-dark);
    backdrop-filter: blur(6px);
    z-index: 5;

    font-size: 11px;
    opacity: .8;
}
.mobile-menu__bottom a{
		display: block;
    font-size: 11px;
    opacity: 1;
		width: 100%;
}
.mobile-menu.is-open {
    opacity: 1;
    pointer-events: auto;
}
.mobile-menu.is-open .mobile-menu__panel {
    left: 0;
}
/* === MOBILE MENU ACCORDION ADDITIONS === */
.mobile-menu__divider {
    border: 0;
    border-top: 1px solid rgba(255,255,255,0.08);
    margin: 6px 20px;
}
.mobile-acc {
    display: flex;
    flex-direction: column;
    gap: 0;
		
}
.mobile-acc__title {
    width: 100%;
    border: 0;
    text-align: left;
    font-size: 16px;
    padding: 15px 25px;
    color: var(--sg-frame-text);
    background: var(--sg-frame-bg);
    cursor: pointer;
}
.mobile-acc__body {
    display: none;
    flex-direction: column;
    gap: 12px;
    padding: 8px 0 0 0;
}
.mobile-acc__body.is-open {
    display: flex;
		
}
.mobile-acc__body .mobile-menu__link {
    margin-left: 18px;
		background:var(--sg-text-subheadline);
}
/* === UTILITIES ==== */
.u-hidden {
    display: none !important;
}
.u-text-center {
    text-align: center;
}
/*=== SECTIONS ===*/
section{
		position: relative;
		padding: 100px 40px;
		max-width: 1440px;
		margin:auto;
}
.section-title {
    font-size: 38px;
    text-align: center;
    margin-bottom: 50px;
    color: var(--sg-text-headline);
}
.section-subtitle { 
    font-size: 22px;
    font-weight: 500;
    margin: 14px;
		color: var(--sg-text-subheadline);
    opacity: 0.8;
}
@media (max-width: 1024px) {
	section {		min-height: calc(100vh - 90px);}
}

@media (max-width:780px) {
		.section-title {font-size: 28px;}
} 
/* FOOTER */
.footer {
    padding: 25px 40px;
    border-top: 1px solid rgba(0,0,0,0.08);
		color: var(--sg-frame-text);
		background-color: var(--sg-frame-bg);
}
.footer__inner {
    max-width: var(--container-width);
    margin: 0 auto;
}
.footer .nav {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
    font-size: 13px;
}
html[lang="ka"] .footer .nav {gap: 10px;}
.footer .nav a {
    opacity: .8;
}
.footer .nav a:hover {
    opacity: 1;
}
/* ===LOADER=== */
body.is-loading{
  overflow:hidden;
}
body.is-loading > *:not(#page-loader){
  visibility:hidden;
}
#page-loader{
  position:fixed;
  inset:0;
  z-index:9999;
}
.page-loader__bg{
  position:absolute;
  inset:0;
  background: var(--sg-frame-bg);
}
.page-loader__box{
  position:relative;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  color: var(--sg-frame-text);
}
.page-loader__brand{
  font-size:20px;
  font-weight:700;
  letter-spacing:.06em;
}
.page-loader__spinner{
  width:42px;
  height:42px;
  border-radius:50%;
  border:3px solid rgba(255,255,255,.35);
  border-top-color:#fff;
  animation: sgspin .8s linear infinite;
}
@keyframes sgspin { to { transform: rotate(360deg); } }
/*ADAPTIVE*/
@media (max-width: 980px) {
    html[lang="ka"] .nav {
        display: none;
    }

    html[lang="ka"] .burger {
        display: flex;
    }
		html[lang="ka"] .footer .nav {display: none;}
}

@media (max-width:860px) {
    .nav {display:none;}
		.footer .nav {display: none;}
    .burger { display:flex;}
}
.sg-contact {
    max-width: 600px;
    margin: 60px auto;
}

.sg-contact__field {
    margin-bottom: 20px;
}

.sg-contact input,
.sg-contact textarea,
.sg-contact select {
    width: 100%;
    padding: 12px;
    border: 1px solid var(--sg-border-light);
    background: var(--sg-body-bg);
    color: var(--sg-text-main);
}

.sg-contact__submit {
    padding: 12px 28px;
    border: 1px solid var(--sg-accent-primary);
    background: transparent;
    color: var(--sg-accent-primary);
    cursor: pointer;
}

.sg-contact__result {
    margin-top: 20px;
}

/* SCROLL TO TOP BUTTON */

.sg-scroll-top{
    position:fixed;
    right:28px;
    bottom:28px;

    width:46px;
    height:46px;

    border-radius:50%;
    border:none;

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

    cursor:pointer;

    background:linear-gradient(
        135deg,
        var(--sg-block-grad-start),
        var(--sg-block-grad-end)
    );

    color:#fff;

    box-shadow:0 8px 24px rgba(0,0,0,0.25);

    opacity:0;
    pointer-events:none;

    transition:opacity .25s ease, transform .25s ease;

    z-index:999;
}

.sg-scroll-top.is-visible{
    opacity:1;
    pointer-events:auto;
}

.sg-scroll-top svg{
    width:20px;
    height:20px;
}

.sg-scroll-top:hover{
    transform:translateY(-3px); 
}

.dev-page {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 70vh;
}

.dev-hero {
  width: 100%;
  padding: 40px 20px;
	min-height: calc(100vh - 185px);
}

.dev-hero__inner {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.dev-hero__visual {
  width: 100%;
  height: 260px;
  margin-bottom: 30px;

  border-radius: 16px;

  background:
    linear-gradient(135deg, rgba(255,255,255,0.05), rgba(0,0,0,0.2)),
    url('img/dev.jpg') center / cover no-repeat;

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

.dev-hero__title {
  font-size: 28px;
  font-weight: 600; 
  margin-bottom: 12px;
}

.dev-hero__text {
  font-size: 16px;
  color: #666;
  margin-bottom: 24px;
}

.dev-hero__btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;

  padding: 12px 20px;
  border-radius: 10px;

  background: #2AABEE;
  color: #fff;
  text-decoration: none;

  font-weight: 500;

  transition: all 0.2s ease;
}

.dev-hero__btn:hover {
  background: #229ED9;
  transform: translateY(-1px);
}

.dev-hero__btn i {
  font-size: 18px;
}

/* === AUTH REQUIRED MODAL === */

.sg-auth-required-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
}

.sg-arm__overlay { 
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.5);
}

.sg-arm__content {
  position: relative;
  max-width: 420px;
  margin: 120px auto;
  background: #fff;
  border-radius: 12px;
  padding: 24px;
  text-align: center;
  box-shadow: 0 10px 30px rgba(0,0,0,0.2);
}

.sg-arm__logo{
	width: 250px;
	margin:auto;
}

.sg-arm__text {
  font-size: 15px;
  line-height: 1.4;
  margin-bottom: 20px;
	color: #76120e;
}

.sg-arm__actions {
  display: flex;
  justify-content: center;
  gap: 12px;
}

.sg-arm-btn {
  min-width: 120px;
	border-radius: 10px;
	padding: 10px;
	text-align: center;
	background: #d4801e;	
	
}

.sg-arm-btn--primary{
	color: #f4d56c;
}

.sg-arm-btn--secondary{
	color: var(--sg-accent-secondary);
}

.sg-arm-btn--ghost{
	color: var(--sg-block-grad-end);
}







