/* THEME */

:root{
  color-scheme: dark;

  --bg:#050609;
  --panel:rgba(255,255,255,.045);
  --panel-strong:rgba(255,255,255,.075);
  --line:rgba(255,255,255,.15);
  --section-line:rgba(255,255,255,.10);
  --button-line:rgba(255,255,255,.25);

  --text:#f5f0e8;
  --muted:rgba(245,240,232,.68);
  --gold:#d7b66a;

  --max:1180px;
  --content:760px;
  --narrow:640px;

  --radius-sm:10px;
  --radius-md:18px;
  --radius-lg:28px;

  --space-xs:.5rem;
  --space-sm:1rem;
  --space-md:1.5rem;
  --space-lg:2.5rem;
  --space-xl:4.5rem;
  --space-xxl:7rem;

  --shadow-soft:0 20px 60px rgba(0,0,0,.28);
  --shadow-strong:0 30px 90px rgba(0,0,0,.45);

  --ease:cubic-bezier(.22,1,.36,1);
}

/* LIGHT THEME */

[data-theme="light"]{
  color-scheme: light;

  --bg:#f4efe6;
  --panel:rgba(255,255,255,.66);
  --panel-strong:rgba(255,255,255,.86);
  --line:rgba(20,15,10,.13);
  --section-line:rgba(255,255,255,.10);
  --button-line:rgba(255,255,255,.25);

  --text:#191510;
  --muted:rgba(25,21,16,.66);
  --gold:#9f742f;

  --shadow-soft:0 18px 50px rgba(60,45,25,.14);
  --shadow-strong:0 28px 80px rgba(60,45,25,.22);
}


/* ============== BASE ==================================================*/

*,
*::before,
*::after{
  box-sizing:border-box;
}

html{
  background:var(--bg);
  color:var(--text);
  scroll-behavior:smooth;
}

body{
  margin:0;
  min-height:100vh;
  font-family:Inter, sans-serif;
  line-height:1.6;
  background:
    radial-gradient(circle at top left, rgba(215,182,106,.12), transparent 34rem),
    var(--bg);
  color:var(--text);
}

img{
  display:block;
  max-width:100%;
}

a{
  color:inherit;
  text-decoration:none;
}

button,
input,
textarea,
select{
  font:inherit;
}


/* ============== SHELL ==================================================*/


.site-shell{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

.site-main{
  flex:1;
}

.section-wrap{
  padding-block:var(--space-xxl);
}

.wide-wrap{
  width:min(100% - 2rem,var(--max));
  margin-inline:auto;
}

.narrow-wrap{
  width:min(100% - 2rem,var(--content));
  margin-inline:auto;
}


/* ============== header ==================================================*/
.skip-link{
  position:absolute;
  left:-9999px;
}

.skip-link:focus{
  left:1rem;
  top:1rem;
  z-index:2000;

  padding:.75rem 1rem;

  background:var(--gold);
  color:#000;
  border-radius:var(--radius-sm);
}

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 50;
  background: linear-gradient(180deg, rgba(5,6,9,.88), rgba(5,6,9,.42), transparent);
  backdrop-filter: blur(12px);
}

.site-nav {
  max-width: var(--max);
  margin: 0 auto;
  padding:13px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.site-brand {
  font-size: 1.08rem;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
  white-space:nowrap;
}

.header-nav{
  margin-left:auto;
}


.nav-list {
  display: flex;
  gap: 32px;
  align-items: center;
  font-size: .75rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(245,240,232,.72);
  list-style:none;
}


.site-brand a,
.nav-list a{
  transition:
  color .25s var(--ease),
  opacity .25s var(--ease);
}

.nav-list a:hover,
.nav-list a.current,
.nav-list a[aria-current="page"],
.site-brand a:hover{
  color: var(--gold);
}

.nav-list a.current {
  text-shadow: 0 0 22px rgba(215,182,106,.26);
  font-weight:600;
}

header .archive-nav, .mobile-menu-toggle{
  display:none;
}

/* ============== hero-section ==================================================*/
.hero-section,
.page-hero{
  min-height: 100svh;
  position: relative;
  display: grid;
  align-items:center;
  overflow: hidden;
  isolation:isolate;
  background:transparent;
}

.hero-section > *,
.page-hero > *{
  position:relative;
  z-index:1;
}

.hero-bg, .intro-bg {
  position: absolute;
  inset: 0;
/*  background-image:
    linear-gradient(90deg, rgba(5,6,9,.82) 0%, rgba(5,6,9,.42) 45%, rgba(5,6,9,.76) 100%),
    linear-gradient(180deg, rgba(5,6,9,.24) 0%, rgba(5,6,9,.18) 45%, #050609 100%),
    url("/assets/images/bg/page-hero-intro-bg.webp");*/
  background-image:
    linear-gradient(90deg, rgba(5,6,9,.82) 0%, rgba(5,6,9,.42) 45%, rgba(5,6,9,.76) 100%),
    linear-gradient(180deg, rgba(5,6,9,.24) 0%, rgba(5,6,9,.18) 45%, #050609 100%),
	 var(--hero-bg);
  background-size:auto, auto, cover;
  background-position: center;
  background-repeat:no-repeat;
  z-index:-1;
}

.hero-wrap, .section-wrap {
  position: relative;
  width: 100%;
  max-width: var(--max);
  margin: 0 auto;
  padding: 150px 24px 80px 24px;
}


.hero-section h1{
  margin:0;
  max-width:11ch;
  font-size:clamp(3.2rem,7.8vw,7rem);
  line-height:1.1;
  letter-spacing:-.06em;
}

.intro-block{
  max-width:58ch;
  margin-top:1.5rem;
  color:var(--muted);
  font-size:1.08rem;
}

.action-group {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 34px;
}

.action-btn,
.btn-float{
  min-height: 48px;
  padding: 0 24px;
  border-radius: 999px;
  border:1px solid var(--button-line);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: .75rem;
  letter-spacing: .17em;
  text-transform: uppercase;
  font-weight: 800;
  transition: transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
}

.action-btn:hover,
.btn-float:hover {
  transform: translateY(-2px);
  background:var(--panel-strong);
  border-color:rgba(215,182,106,.38);
}

.primary-btn {
  background: var(--gold);
  color: #11100c;
}
.primary-btn:hover{
  background:var(--gold);	
}


/* ==============  page  ==================================================*/





.page-title{
  margin:0;
  font-size:clamp(2.8rem,7vw,5.5rem);
  line-height:.95;
  letter-spacing:-.04em;
}

.section-title{
  margin:0 0 1rem;
  font-size:clamp(2rem,5vw,3.4rem);
  line-height:1;
}

.section-label{
  margin:0 0 .75rem;
  color: var(--gold);
  font-size: .78rem;
  letter-spacing: .24em;
  text-transform: uppercase;
  font-weight: 800;
  
}

.page-intro{
  max-width:60ch;
  color:var(--muted);
  font-size:1.1rem;
}





/* ==============  Footer  ==================================================*/
.site-footer{
  margin-top:var(--space-xxl);
  padding:3.5rem 0 5rem;
  border-top:1px solid var(--section-line);
}

.site-footer a{
  font-size: .75rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color:var(--muted);
  position:relative;
  transition:
  color .25s var(--ease),
  opacity .25s var(--ease);
}

.site-footer a.current,
.site-footer a[aria-current="page"],
.site-footer a:hover{
  color: var(--gold);
}

.footer-inner{
  width:min(100% - 2rem,var(--max));
  margin-inline:auto;
}

.footer-links{
  display:grid;
  gap:1.5rem;
  justify-items:center;
}

.footer-links .nav-list{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:1.25rem 2rem;
  margin:0;
  padding:0;
  list-style:none;
}

.footer-copy{
  margin:2rem 0 0;
  color:var(--muted);
  font-size:.9rem;
  text-align:center;
}





/* ==============  lighting  ==================================================*/


.section-light-right{
  background:
    radial-gradient(
      circle at 78% 18%,
      rgba(215,182,106,.11),
      transparent 40%
    );
}

.section-light-left{
  background:
    radial-gradient(
      circle at 22% 18%,
      rgba(215,182,106,.10),
      transparent 38%
    );
}

.section-light-center{
  background:
    radial-gradient(
      circle at center,
      rgba(215,182,106,.12),
      transparent 40%
    );
	
}

.section-light-bottom{
  background:
    radial-gradient(
      circle at 50% 100%,
      rgba(215,182,106,.12),
      transparent 40%
    );
}
