.site-header{
    position:sticky;
    top:0;
    z-index:1000;
    background:#070808;
    border-bottom:1px solid rgba(214,173,65,.20);
    transition:background-color .25s ease,border-color .25s ease,box-shadow .25s ease,backdrop-filter .25s ease;
}
.site-header.is-scrolled{
    background:rgba(7,8,8,.88);
    border-bottom-color:rgba(214,173,65,.30);
    box-shadow:0 12px 36px rgba(0,0,0,.34);
    backdrop-filter:blur(16px) saturate(125%);
    -webkit-backdrop-filter:blur(16px) saturate(125%);
}
.site-header__inner{
    min-height:78px;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:24px;
    position:relative;
}
.site-header .brand{
    grid-column:1;
    display:flex;
    align-items:center;
    gap:11px;
    min-width:max-content;
}
.site-header .brand img{
    width:46px;
    height:46px;
    object-fit:contain;
}
.site-header .brand span{display:grid;line-height:1.13}
.site-header .brand strong{font-size:.96rem;letter-spacing:.075em;white-space:nowrap}
.site-header .brand small{
    margin-top:4px;
    color:#807b72;
    font-size:.66rem;
    white-space:nowrap;
}
@media(min-width:1181px){
    .site-header__inner{width:min(100% - 64px,1520px);min-height:80px}
    .site-header .brand img{width:48px;height:48px}
    .site-header .brand strong{font-size:1rem}
}


.site-header .site-nav{
    grid-column:2;
    justify-self:center;
    display:flex;
    align-items:center;
    gap:20px;
    min-width:0;
    font-size:.84rem;
    font-weight:700;
}
.site-header .site-nav a{
    position:relative;
    padding:0;
    border:0;
    border-radius:0;
    background:none;
    color:#d8d3ca;
    white-space:nowrap;
    transform:none;
    transition:color .2s ease;
}
.site-header .site-nav a:hover,
.site-header .site-nav a.is-active{color:var(--gold-light)}
.site-header .site-nav a.is-active::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:-12px;
    width:20px;
    height:1px;
    background:var(--gold);
    transform:translateX(-50%);
}
.site-header .locale-switcher{
    grid-column:3;
    display:flex;
    flex:none;
    border:1px solid rgba(214,173,65,.25);
    border-radius:999px;
    padding:3px;
    background:rgba(255,255,255,.01);
}
.site-header .locale-switcher a{
    padding:6px 9px;
    font-size:.69rem;
    color:#7e7b75;
    border-radius:999px;
    white-space:nowrap;
    transition:color .2s ease,background-color .2s ease;
}
.site-header .locale-switcher a:hover{color:var(--gold-light)}
.site-header .locale-switcher a.active{background:var(--gold);color:#0b0b0b;font-weight:850}
.site-header .nav-toggle{
    display:none;
    width:38px;
    height:38px;
    padding:8px;
    background:none;
    border:0;
    color:#fff;
    cursor:pointer;
}
.site-header .nav-toggle span{
    display:block;
    width:20px;
    height:2px;
    margin:4px auto;
    background:currentColor;
    border-radius:99px;
    transition:transform .2s ease,opacity .2s ease;
}
.site-header .nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.site-header .nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.site-header .nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media(min-width:1320px){
    .site-header .site-nav{gap:24px;font-size:.88rem}
}


@media (max-width:1180px){
  .site-header__inner{
    min-height:var(--header-h);
    grid-template-columns:minmax(0,1fr) auto auto;
    gap:12px;
  }

  .site-header .brand{grid-column:1;min-width:0}
  .site-header .locale-switcher{grid-column:2;justify-self:end}
  .site-header .nav-toggle{display:block;grid-column:3;justify-self:end}

  .site-header .site-nav{
    grid-column:auto;
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:calc(100% + 8px);
    max-height:calc(100vh - var(--header-h) - 28px);
    overflow-y:auto;
    padding:10px;
    border:1px solid var(--line);
    border-radius:14px;
    background:rgba(12,13,14,.98);
    box-shadow:0 22px 55px rgba(0,0,0,.42);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    flex-direction:column;
    align-items:stretch;
    gap:2px;
    font-size:.9rem;
  }

  .site-header .site-nav.is-open{display:flex}

  .site-header .site-nav a{
    min-height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:9px 10px;
    border:1px solid rgba(255,255,255,.045);
    border-radius:8px;
    background:#0d0e0e;
    color:#ddd6c9;
    text-align:center;
  }

  .site-header .site-nav a:hover,
  .site-header .site-nav a.is-active{
    border-color:rgba(214,173,65,.28);
    background:rgba(217,173,67,.055);
    color:#efca65;
  }

  .site-header .site-nav a.is-active::after{display:none}
}

@media (max-width:900px){
  :root{--header-h:66px}

  .site-header{
    background:rgba(4,5,5,.96);
    border-bottom-color:rgba(214,173,65,.24);
    box-shadow:0 10px 28px rgba(0,0,0,.28);
    backdrop-filter:blur(18px) saturate(120%);
    -webkit-backdrop-filter:blur(18px) saturate(120%);
  }

  .site-header__inner{
    width:min(calc(100% - 20px),620px);
    min-height:66px;
    grid-template-columns:minmax(0,1fr) auto auto;
    gap:8px;
  }

  .site-header .brand{gap:9px}

  .site-header .brand img{
    width:42px;
    height:42px;
    flex:0 0 42px;
    filter:drop-shadow(0 5px 14px rgba(0,0,0,.58));
  }

  .site-header .brand span{min-width:0}
  .site-header .brand small{display:none}

  .site-header .brand strong{
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:.81rem;
    letter-spacing:.055em;
  }

  .site-header .locale-switcher{
    padding:3px;
    border-color:rgba(214,173,65,.30);
    background:rgba(0,0,0,.36);
  }

  .site-header .locale-switcher a{
    min-width:31px;
    padding:6px 7px;
    text-align:center;
    font-size:.625rem;
  }

  .site-header .locale-switcher a.active{
    background:linear-gradient(180deg,#edc85e,#c89429);
    color:#10100f;
    box-shadow:0 4px 12px rgba(204,156,42,.22);
  }

  .site-header .nav-toggle{
    width:38px;
    height:38px;
    padding:0;
    border:1px solid rgba(214,173,65,.26);
    border-radius:10px;
    background:rgba(255,255,255,.018);
  }

  .site-header .nav-toggle span{width:20px;height:2px}

  .site-header .site-nav{
    top:calc(100% + 7px);
    left:0;
    right:0;
    padding:9px;
    border-color:rgba(214,173,65,.28);
    border-radius:13px;
    background:rgba(8,9,9,.985);
    box-shadow:0 22px 48px rgba(0,0,0,.52);
  }
}

@media (max-width:390px){
  :root{--header-h:62px}

  .site-header__inner{
    width:calc(100% - 14px);
    min-height:62px;
    gap:6px;
  }

  .site-header .brand{gap:7px}
  .site-header .brand img{width:38px;height:38px;flex-basis:38px}
  .site-header .brand strong{font-size:.72rem;letter-spacing:.035em}
  .site-header .locale-switcher{padding:2px}
  .site-header .locale-switcher a{min-width:27px;padding:5px;font-size:.56rem}
  .site-header .nav-toggle{width:35px;height:35px;border-radius:9px}
}


@media (min-width:1181px){
    .root-index-pc-page .site-header .site-nav .nav-quote,
    .root-index-pc-page .site-header .site-nav .nav-cta{
        padding:0;
        border:0;
        border-radius:0;
        background:none;
        color:#d8d3ca;
        transform:none;
    }
    .root-index-pc-page .site-header .site-nav .nav-quote:hover,
    .root-index-pc-page .site-header .site-nav .nav-cta:hover{
        border:0;
        background:none;
        color:var(--gold-light);
        transform:none;
    }
}


.contact-rail{position:fixed;right:18px;top:50%;z-index:920;display:grid;gap:10px;width:132px;transform:translateY(-50%)}
.contact-rail__card{overflow:hidden;border:1px solid rgba(217,173,67,.38);border-radius:16px;background:rgba(10,11,12,.97);box-shadow:0 16px 38px rgba(0,0,0,.38);text-align:center;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.contact-rail__card>strong{display:block;padding:9px 6px 7px;font-size:.68rem;line-height:1;letter-spacing:.055em;color:#f4d06a}
.contact-rail__card>a,.contact-rail__static{display:grid;gap:5px;padding:0 10px 10px;color:#f5f1e8}
.contact-rail__qr{display:grid;place-items:center;width:102px;height:102px;margin:auto;overflow:hidden;border-radius:9px;background:#fff}
.contact-rail__qr img{width:100%;height:100%;object-fit:contain}
.contact-rail__qr-empty{width:100%;height:100%;display:grid;place-content:center;gap:2px;background:linear-gradient(145deg,#fff,#ebe8df);color:#151515}
.contact-rail__qr-empty b{font-size:.79rem;letter-spacing:.02em}.contact-rail__qr-empty small{font-size:.59rem;color:#6c6557}
.contact-rail__card>a>small,.contact-rail__static>small{font-size:.58rem;color:#a9a39a}
.contact-rail__card--line{border-color:rgba(6,199,85,.48)}.contact-rail__card--line>strong{color:#45dc7e}
.contact-rail__card--zalo{border-color:rgba(0,104,255,.52)}.contact-rail__card--zalo>strong{color:#67a6ff}
.contact-rail__card--telegram{border-color:rgba(42,171,238,.54)}.contact-rail__card--telegram>strong{color:#65c8f3}
.contact-rail__card--kakao{border-color:rgba(255,224,0,.54)}.contact-rail__card--kakao>strong{color:#ffe45d}
.contact-mobile{display:none}

@media(min-width:1181px) and (max-height:760px){
  .contact-rail{gap:7px;width:118px}
  .contact-rail__card>strong{padding:7px 5px 5px;font-size:.62rem}
  .contact-rail__card>a,.contact-rail__static{gap:3px;padding:0 8px 8px}
  .contact-rail__qr{width:88px;height:88px}
  .contact-rail__card>a>small,.contact-rail__static>small{font-size:.53rem}
}

@media (max-width:1180px){
  .contact-rail{display:none}

  body{
    padding-bottom:calc(78px + env(safe-area-inset-bottom));
  }

  .contact-mobile{
    position:fixed;
    z-index:1400;
    left:10px;
    right:10px;
    bottom:max(8px,env(safe-area-inset-bottom));
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:5px;
    padding:6px;
    border:1px solid rgba(214,173,65,.30);
    border-radius:17px;
    background:rgba(8,9,10,.90);
    box-shadow:0 -8px 32px rgba(0,0,0,.42),0 10px 30px rgba(0,0,0,.35);
    backdrop-filter:blur(18px) saturate(1.15);
    -webkit-backdrop-filter:blur(18px) saturate(1.15);
  }

  .contact-mobile::before{
    content:"";
    position:absolute;
    left:16px;
    right:16px;
    top:-1px;
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(239,202,108,.70),transparent);
    pointer-events:none;
  }

  .contact-mobile__item{
    min-width:0;
    height:54px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    padding:4px 2px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:11px;
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
    color:#f5f0e4;
    text-decoration:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
    -webkit-tap-highlight-color:transparent;
  }

  .contact-mobile__item:active{
    transform:translateY(1px);
    background:rgba(214,173,65,.075);
    border-color:rgba(214,173,65,.25);
  }

  .contact-mobile__icon,
  .contact-mobile__item>span{
    width:24px;
    height:24px;
    flex:0 0 24px;
    display:grid;
    place-items:center;
    overflow:hidden;
    border-radius:7px;
    background:#181a1b;
    font-size:10px;
    line-height:1;
  }

  .contact-mobile__icon.has-image{background:transparent}

  .contact-mobile__icon.has-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
  }

  .contact-mobile__item>strong{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    color:#eee8dc;
    font-size:10px;
    font-weight:760;
    line-height:1;
    letter-spacing:-.02em;
    white-space:nowrap;
  }

  .contact-mobile__item.is-pending{opacity:.62}
}

@media (max-width:380px){
  body{
    padding-bottom:calc(73px + env(safe-area-inset-bottom));
  }

  .contact-mobile{
    left:7px;
    right:7px;
    gap:4px;
    padding:5px;
    border-radius:15px;
  }

  .contact-mobile__item{
    height:51px;
    gap:3px;
  }

  .contact-mobile__icon,
  .contact-mobile__item>span{
    width:22px;
    height:22px;
    flex-basis:22px;
  }

  .contact-mobile__item>strong{font-size:9px}
}
