@import url(https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Noto+Serif+JP:wght@200;300;400&family=Inter:wght@300;400;500&family=Montserrat:wght@300;400;500&display=swap);

:root {
  --g-black:#080808;
  --g-deep:#0d0d0d;
  --g-dark:#111111;
  --g-surface:#161616;
  --g-card:#1a1a1a;
  --g-border:rgba(255,255,255,0.08);
  --g-border-gold:rgba(184,157,107,0.3);
  --g-gold:#b89d6b;
  --g-gold-light:#d4b896;
  --g-gold-pale:#f0e8d8;
  --g-white:#ffffff;
  --g-text:#e8e4de;
  --g-muted:#8a8480;
  --g-subtle:#4a4540;
  --g-accent:#c8a96e;
  --g-hero-bg:linear-gradient(160deg,#080c18 0%,#0d1420 40%,#111827 70%,#0a0e18 100%);
  --g-font-serif:"Cormorant Garamond","Noto Serif JP",Georgia,serif;
  --g-font-sans:"Inter","Montserrat",-apple-system,sans-serif;
  --g-transition:0.4s cubic-bezier(0.25,0.46,0.45,0.94);
}

*,*::before,*::after {
  box-sizing:border-box;
  margin:0;
  padding:0;
}

.elementor-section-wrap,.e-con-inner {
  background:var(--g-black);
}

.g-nav {
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:9999;
  background:rgba(8,8,8,0.92);
  backdrop-filter:blur(20px) saturate(180%);
  border-bottom:1px solid var(--g-border);
  padding:0 clamp(20px,5vw,80px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:68px;
}

.g-nav-logo {
  font-family:var(--g-font-sans);
  font-size:19px;
  font-weight:600;
  letter-spacing:0.25em;
  color:var(--g-gold);
  text-decoration:none;
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:10px;
  text-transform:uppercase;
}

.g-nav-logo span.jp {
  font-size:10px;
  letter-spacing:0.2em;
  color:var(--g-gold);
  font-family:var(--g-font-sans);
  text-transform:uppercase;
  display:block;
}

.g-logo-svg {
  width:34px;
  height:34px;
  flex-shrink:0;
  display:block;
}

.g-nav-logo-text {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:1px;
}

.g-nav-links {
  display:flex;
  align-items:center;
  gap:36px;
  list-style:none;
  padding:0;
  margin:0;
}

.g-nav-links a {
  font-family:var(--g-font-sans);
  font-size:11px;
  font-weight:400;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--g-muted);
  text-decoration:none;
  transition:var(--g-transition);
}

.g-nav-links a:hover {
  color:var(--g-white);
}

.g-nav-right {
  display:flex;
  align-items:center;
  gap:20px;
}

.g-nav-cart {
  font-family:var(--g-font-sans);
  font-size:11px;
  letter-spacing:0.15em;
  text-transform:uppercase;
  color:var(--g-white);
  text-decoration:none;
  padding:9px 20px;
  border:1px solid var(--g-border-gold);
  transition:var(--g-transition);
  cursor:pointer;
  background:transparent;
}

.g-nav-cart:hover {
  color:var(--g-black);
}

.g-hero-video {
  background:#050810;
}

.g-hero-tag {
  font-family:var(--g-font-sans);
  font-size:10px;
  letter-spacing:0.3em;
  text-transform:uppercase;
  color:var(--g-gold);
  margin-bottom:24px;
  display:flex;
  align-items:center;
  gap:12px;
}

.g-hero-tag::before {
  content:"";
  display:block;
  width:30px;
  height:1px;
  background:var(--g-gold);
}

.g-hero-title {
  font-family:var(--g-font-serif);
  font-size:clamp(42px,5vw,68px);
  line-height:1.1;
  font-weight:300;
  color:var(--g-white);
  margin-bottom:28px;
}

.g-hero-title em {
  font-style:italic;
  color:var(--g-gold-light);
}

.g-hero-jp {
  font-size:12px;
  letter-spacing:0.2em;
  color:var(--g-subtle);
  font-family:var(--g-font-sans);
  margin-bottom:20px;
}

.g-hero-desc {
  font-family:var(--g-font-sans);
  font-size:14px;
  line-height:1.8;
  color:var(--g-muted);
  max-width:440px;
  margin-bottom:40px;
}

.g-hero-actions {
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:40px;
  flex-wrap:wrap;
}

.g-btn-primary {
  font-family:var(--g-font-sans);
  font-size:11px;
  letter-spacing:0.2em;
  text-transform:uppercase;
  background:var(--g-gold);
  color:var(--g-black);
  border:none;
  padding:14px 32px;
  cursor:pointer;
  text-decoration:none;
  display:inline-block;
  transition:var(--g-transition);
  font-weight:500;
}

.g-btn-primary:hover {
  background:var(--g-gold-light);
}

.g-btn-outline {
  font-family:var(--g-font-sans);
  font-size:11px;
  letter-spacing:0.2em;
  text-transform:uppercase;
  background:transparent;
  color:var(--g-text);
  border:1px solid var(--g-border);
  padding:13px 28px;
  cursor:pointer;
  text-decoration:none;
  display:inline-block;
  transition:var(--g-transition);
}

.g-hero-corner {
  position:absolute;
  width:20px;
  height:20px;
  border-color:var(--g-gold-light);
  border-style:solid;
  opacity:0.4;
}

.g-hero-corner.tl {
  top:12px;
  left:12px;
  border-width:1px 0 0 1px;
}

.g-hero-corner.tr {
  top:12px;
  right:12px;
  border-width:1px 1px 0 0;
}

.g-hero-corner.bl {
  bottom:12px;
  left:12px;
  border-width:0 0 1px 1px;
}

.g-hero-corner.br {
  bottom:12px;
  right:12px;
  border-width:0 1px 1px 0;
}

.g-promo-banner {
  background:var(--g-surface);
  border-top:1px solid var(--g-border-gold);
  border-bottom:1px solid var(--g-border-gold);
  padding:16px clamp(20px,5vw,80px);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:0;
  overflow:hidden;
}

.g-promo-ticker {
  display:flex;
  align-items:center;
  gap:48px;
  white-space:nowrap;
}

.g-promo-item {
  display:flex;
  align-items:center;
  gap:10px;
  font-family:var(--g-font-sans);
  font-size:10.5px;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--g-muted);
}

.g-promo-item svg {
  width:14px;
  height:14px;
  color:var(--g-gold);
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
  flex-shrink:0;
}

.g-promo-sep {
  color:var(--g-border-gold);
  font-size:16px;
}

.g-section-header {
  text-align:center;
  margin-bottom:64px;
}

.g-section-eyebrow {
  font-family:var(--g-font-sans);
  font-size:10px;
  letter-spacing:0.35em;
  text-transform:uppercase;
  color:var(--g-gold);
  margin-bottom:16px;
}

.g-section-title {
  font-family:var(--g-font-serif);
  font-size:clamp(32px,4vw,52px);
  font-weight:300;
  color:var(--g-white);
  line-height:1.15;
}

.g-section-title em {
  font-style:italic;
  color:var(--g-gold-light);
}

.g-section-jp {
  font-size:11px;
  letter-spacing:0.2em;
  color:var(--g-subtle);
  font-family:var(--g-font-sans);
  margin-top:10px;
}

.g-section-desc {
  font-family:var(--g-font-sans);
  font-size:14px;
  line-height:1.8;
  color:var(--g-muted);
  max-width:560px;
  margin:20px auto 0;
}

.g-divider {
  width:40px;
  height:1px;
  background:var(--g-gold);
  margin:20px auto 0;
  opacity:0.5;
}

.g-section {
  padding:100px clamp(20px,8vw,120px);
  background:var(--g-black);
}

.g-section.alt {
  background:var(--g-deep);
}

.g-products-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:2px;
  max-width:1200px;
  margin:0 auto;
}

.g-product-card {
  background:var(--g-card);
  border:1px solid var(--g-border);
  overflow:hidden;
  transition:var(--g-transition);
  cursor:pointer;
}

.g-product-card:hover {
  border-color:var(--g-border-gold);
  transform:translateY(-4px);
}

.g-product-img {
  aspect-ratio:4/3;
  display:flex;
  align-items:center;
  justify-content:center;
}

.g-product-img img {
  width:100%;
  height:100%;
  object-fit:cover;
}

.g-product-info {
  padding:28px;
}

.g-product-cat {
  font-family:var(--g-font-sans);
  font-size:9px;
  letter-spacing:0.25em;
  text-transform:uppercase;
  color:var(--g-gold);
  margin-bottom:10px;
}

.g-product-name {
  font-family:var(--g-font-serif);
  font-size:22px;
  font-weight:400;
  color:var(--g-white);
  margin-bottom:8px;
  line-height:1.25;
}

.g-product-tagline {
  font-family:var(--g-font-sans);
  font-size:12px;
  color:var(--g-muted);
  line-height:1.6;
  margin-bottom:18px;
}

.g-product-specs {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:20px;
}

.g-product-spec {
  font-size:9.5px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  font-family:var(--g-font-sans);
  color:var(--g-muted);
  background:rgba(255,255,255,0.04);
  border:1px solid var(--g-border);
  padding:4px 8px;
}

.g-product-footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-top:18px;
  border-top:1px solid var(--g-border);
}

.g-featured {
  background:var(--g-deep);
}

.g-featured-inner {
  margin:0 auto;
}

.g-featured-img {
  aspect-ratio:1;
  border:1px solid var(--g-border-gold);
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
}

.g-featured-img img {
  width:100%;
  height:100%;
  object-fit:cover;
  position:absolute;
  inset:0;
}

.g-featured-tag {
  font-family:var(--g-font-sans);
  font-size:9.5px;
  letter-spacing:0.2em;
  text-transform:uppercase;
  color:var(--g-gold);
  background:rgba(184,157,107,0.1);
  border:1px solid var(--g-border-gold);
  padding:5px 14px;
  display:inline-block;
  margin-bottom:24px;
}

.g-featured-title {
  font-family:var(--g-font-serif);
  font-size:clamp(28px,3.5vw,48px);
  font-weight:300;
  color:var(--g-white);
  line-height:1.15;
  margin-bottom:20px;
}

.g-featured-desc {
  font-family:var(--g-font-sans);
  font-size:13.5px;
  line-height:1.9;
  color:var(--g-muted);
  margin-bottom:36px;
}

.g-params-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-bottom:40px;
}

.g-param-card {
  background:rgba(255,255,255,0.03);
  border:1px solid var(--g-border);
  padding:18px 14px;
  text-align:center;
  transition:var(--g-transition);
}

.g-param-card:hover {
  border-color:var(--g-border-gold);
}

.g-param-name {
  font-family:var(--g-font-sans);
  font-size:10px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--g-white);
  margin-bottom:4px;
}

.g-param-sub {
  font-family:var(--g-font-sans);
  font-size:9px;
  letter-spacing:0.08em;
  color:var(--g-subtle);
}

.g-articles-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:32px;
  max-width:1200px;
  margin:0 auto;
}

.g-article-card {
  border:1px solid var(--g-border);
  overflow:hidden;
  transition:var(--g-transition);
}

.g-article-card:hover {
  border-color:var(--g-border-gold);
}

.g-article-img {
  width:100%;
  aspect-ratio:16/9;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
}

.g-article-img img {
  width:100%;
  height:100%;
  object-fit:cover;
  position:absolute;
  inset:0;
}

.g-article-body {
  padding:24px;
}

.g-article-cat {
  font-size:9px;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--g-gold);
  font-family:var(--g-font-sans);
  margin-bottom:10px;
}

.g-article-title {
  font-family:var(--g-font-serif);
  font-size:20px;
  font-weight:400;
  color:var(--g-white);
  line-height:1.3;
  margin-bottom:12px;
}

.g-article-excerpt {
  font-family:var(--g-font-sans);
  font-size:12.5px;
  line-height:1.7;
  color:var(--g-muted);
  margin-bottom:16px;
}

.g-article-link {
  font-family:var(--g-font-sans);
  font-size:9.5px;
  letter-spacing:0.2em;
  text-transform:uppercase;
  color:var(--g-gold);
  text-decoration:none;
}

.g-article-link:hover {
  color:var(--g-white);
}

.g-faq-list {
  max-width:800px;
  margin:0 auto;
}

.g-faq-item {
  border-bottom:1px solid var(--g-border);
}

.g-faq-q {
  width:100%;
  background:none;
  border:none;
  text-align:left;
  padding:22px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  cursor:pointer;
}

.g-faq-q-text {
  font-family:var(--g-font-sans);
  font-size:12px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--g-text);
}

.g-faq-icon {
  width:20px;
  height:20px;
  border:1px solid var(--g-border);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  color:var(--g-gold);
  transition:var(--g-transition);
  font-size:14px;
}

.g-faq-item.open .g-faq-icon {
  transform:rotate(45deg);
}

.g-faq-a {
  max-height:0;
  overflow:hidden;
  transition:max-height 0.4s ease;
}

.g-faq-a-inner {
  font-family:var(--g-font-sans);
  font-size:13.5px;
  line-height:1.9;
  color:var(--g-muted);
  padding-bottom:22px;
}

.g-faq-item.open .g-faq-a {
  max-height:300px;
}

.g-footer {
  background:var(--g-deep);
  border-top:1px solid var(--g-border);
  padding:80px clamp(20px,8vw,120px) 40px;
}

.g-footer-top {
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr 1fr;
  gap:60px;
  margin-bottom:60px;
}

.g-footer-logo {
  font-family:var(--g-font-sans);
  font-size:18px;
  color:#ffffff;
  margin-bottom:6px;
  font-weight:600;
  letter-spacing:0.25em;
  text-transform:uppercase;
}

.g-footer-logo-jp {
  font-size:10px;
  letter-spacing:0.2em;
  color:var(--g-gold);
  font-family:var(--g-font-sans);
  margin-bottom:16px;
}

.g-footer-brand-desc {
  font-family:var(--g-font-sans);
  font-size:12.5px;
  line-height:1.8;
  color:var(--g-muted);
  max-width:260px;
}

.g-footer-col-title {
  font-family:var(--g-font-sans);
  font-size:9.5px;
  letter-spacing:0.25em;
  text-transform:uppercase;
  color:var(--g-white);
  margin-bottom:24px;
}

.g-footer-links {
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.g-footer-links a {
  font-family:var(--g-font-sans);
  font-size:12.5px;
  color:var(--g-muted);
  text-decoration:none;
  transition:var(--g-transition);
  letter-spacing:0.04em;
}

.g-footer-bottom {
  border-top:1px solid var(--g-border);
  padding-top:28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:16px;
}

.g-footer-copy {
  font-family:var(--g-font-sans);
  font-size:11px;
  color:var(--g-subtle);
  letter-spacing:0.08em;
}

.g-footer-legal {
  display:flex;
  gap:24px;
}

.g-footer-legal a {
  font-family:var(--g-font-sans);
  font-size:11px;
  color:var(--g-subtle);
  text-decoration:none;
  letter-spacing:0.08em;
  transition:var(--g-transition);
}

@media (max-width:768px) {
  .g-nav-links {
    display:none;
  }

  .g-products-grid,.g-articles-grid {
    grid-template-columns:1fr;
  }

  .g-footer-top {
    grid-template-columns:1fr 1fr;
    gap:40px;
  }

  .g-params-grid {
    grid-template-columns:repeat(2,1fr);
  }

}

@media (max-width:480px) {
  .g-footer-top {
    grid-template-columns:1fr;
  }

}

a:hover,button:hover {
  color:var(--g-gold);
}

.g-btn-primary:hover {
  background:#c8a96e;
  color:#080808;
  border-color:#c8a96e;
}

.g-btn-outline:hover {
  border-color:var(--g-gold);
  color:var(--g-gold);
  background:transparent;
}

.g-nav-cart:hover {
  background:var(--g-gold);
  border-color:var(--g-gold);
  color:#080808;
}

.g-article-link:hover,.g-faq-q:hover .g-faq-q-text,.g-footer-links a:hover,.g-footer-legal a:hover {
  color:var(--g-gold);
}

.g-nav-links a:hover {
  color:#ffffff;
}

.g-product-card:hover {
  border-color:rgba(184,157,107,0.4);
}

*:focus {
  outline-color:var(--g-gold);
}

a {
  color:inherit;
}

.elementor-section-wrap,.e-con,.elementor-widget-container {
  background:transparent;
}

.g-product-img {
  position:relative;
  width:100%;
  overflow:hidden;
  background:#0a0e1a;
}

.g-product-img-real {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform 0.4s ease;
}

.g-product-img:hover .g-product-img-real {
  transform:scale(1.04);
}

.g-featured-img-real {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  border-radius:2px;
}

.g-article-img {
  overflow:hidden;
  background:#0a0e1a;
}

.g-article-img-real {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform 0.4s ease;
}

.g-article-card:hover .g-article-img-real {
  transform:scale(1.04);
}

@media (max-width:768px) {
  .g-hero-content {
    grid-area:2/1;
  }

  .g-hero-title {
    font-size:clamp(1.8rem,7vw,2.5rem);
  }

  .g-hero-actions {
    justify-content:center;
    flex-wrap:wrap;
    gap:10px;
  }

  .g-nav {
    padding:12px 16px;
  }

}

@media (max-width:480px) {
  .g-hero-title {
    font-size:clamp(1.5rem,6vw,2rem);
  }

}

.g-nav-dropdown {
  position:relative;
}

.g-featured {
  margin:0;
  padding:72px clamp(20px,8vw,120px);
  background:#0d0d0d;
  position:relative;
  overflow:hidden;
}

.g-featured+.g-featured {
  border-top:1px solid rgba(184,157,107,.12);
}

.g-featured:nth-of-type(even) {
  background:#111111;
}

.g-featured-inner {
  max-width:1280px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:64px;
  align-items:center;
}

.g-featured.g-featured-alt .g-featured-img {
  order:2;
}

.g-featured.g-featured-alt .g-featured-content {
  order:1;
}

.g-featured.g-featured-offset .g-featured-inner {
  transform:translateX(34px);
}

.g-featured.g-featured-offset-2 .g-featured-inner {
  transform:translateX(-22px);
}

.g-featured-img {
  min-height:clamp(420px,44vw,620px);
  padding:clamp(16px,2vw,24px);
  background:radial-gradient(120% 120%at 30% 20%,#151515 0%,#0d0d0d 65%,#080808 100%);
}

.g-featured .g-featured-img img,.g-featured .g-featured-img-real {
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  position:relative;
  inset:auto;
}

.g-featured-content {
  padding-inline:4px;
}

@media (max-width:1024px) {
  .g-featured {
    padding:54px 20px;
  }

  .g-featured-inner {
    grid-template-columns:1fr;
    gap:28px;
  }

  .g-featured.g-featured-offset .g-featured-inner,.g-featured.g-featured-offset-2 .g-featured-inner {
    transform:none;
  }

  .g-featured.g-featured-alt .g-featured-img,.g-featured.g-featured-alt .g-featured-content {
    order:initial;
  }

}

.g-price-wrap {
  display:flex;
  align-items:baseline;
  gap:10px;
  margin-top:14px;
}

.g-price-main {
  font-family:var(--g-font-serif);
  font-size:clamp(30px,3vw,40px);
  line-height:1;
  color:var(--g-gold-pale);
  font-weight:500;
  letter-spacing:.01em;
}

.g-price-old {
  font-family:var(--g-font-sans);
  font-size:clamp(13px,1.1vw,16px);
  color:rgba(184,157,107,.45);
  text-decoration:line-through;
  text-decoration-thickness:1px;
  text-decoration-color:rgba(184,157,107,.45);
  font-weight:400;
  letter-spacing:.02em;
  position:relative;
  top:-1px;
}

.g-mega-dropdown {
  position:absolute;
  top:calc(100% + 12px);
  left:50%;
  transform:translateX(-50%) translateY(8px);
  background:rgba(10,12,20,0.97);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(184,157,107,0.15);
  border-radius:16px;
  padding:28px 32px;
  min-width:520px;
  z-index:1000;
  opacity:0;
  visibility:hidden;
  transition:all 0.4s cubic-bezier(0.25,0.46,0.45,0.94);
  box-shadow:0 20px 60px rgba(0,0,0,0.5),0 0 40px rgba(184,157,107,0.04),inset 0 1px 0 rgba(255,255,255,0.03);
  pointer-events:none;
}

.g-nav-dropdown:hover .g-mega-dropdown {
  opacity:1;
  visibility:visible;
  transform:translateX(-50%) translateY(0);
  pointer-events:auto;
}

.g-mega-dropdown::before {
  content:"";
  position:absolute;
  top:-14px;
  left:0;
  right:0;
  height:14px;
}

.g-mega-dropdown::after {
  content:"";
  position:absolute;
  top:-1px;
  left:50%;
  width:60px;
  height:2px;
  background:linear-gradient(90deg,transparent,rgba(184,157,107,0.6),transparent);
  transform:translateX(-50%);
  border-radius:2px;
}

.g-mega-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}

.g-mega-card {
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:24px 20px;
  border-radius:12px;
  text-decoration:none;
  border:1px solid transparent;
  transition:all 0.3s ease;
  position:relative;
  overflow:hidden;
}

.g-mega-card::before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(184,157,107,0.03),rgba(184,157,107,0.01));
  opacity:0;
  transition:opacity 0.3s;
  border-radius:12px;
}

.g-mega-card:hover {
  border-color:rgba(184,157,107,0.2);
  transform:translateY(-2px);
}

.g-mega-card:hover::before {
  opacity:1;
}

.g-mega-icon {
  width:40px;
  height:40px;
  border-radius:10px;
  background:rgba(184,157,107,0.08);
  border:1px solid rgba(184,157,107,0.15);
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:14px;
  transition:all 0.3s;
}

.g-mega-card:hover .g-mega-icon {
  background:rgba(184,157,107,0.15);
  border-color:rgba(184,157,107,0.3);
}

.g-mega-icon svg {
  width:20px;
  height:20px;
  stroke:var(--g-gold);
  fill:none;
  stroke-width:1.5;
}

.g-mega-name {
  font-family:var(--g-font-sans);
  font-size:13px;
  font-weight:600;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--g-white);
  margin-bottom:6px;
  transition:color 0.3s;
}

.g-mega-card:hover .g-mega-name {
  color:var(--g-gold-light);
}

.g-mega-desc {
  font-size:11px;
  color:rgba(255,255,255,0.45);
  letter-spacing:0.04em;
  margin-bottom:10px;
  font-family:var(--g-font-sans);
}

.g-mega-price {
  font-family:var(--g-font-sans);
  font-size:14px;
  font-weight:500;
  color:var(--g-gold);
  letter-spacing:0.02em;
}

.g-mega-footer {
  margin-top:20px;
  padding-top:16px;
  border-top:1px solid rgba(184,157,107,0.1);
  text-align:center;
}

.g-mega-footer a {
  font-family:var(--g-font-sans);
  font-size:11px;
  letter-spacing:0.15em;
  text-transform:uppercase;
  color:rgba(255,255,255,0.5);
  text-decoration:none;
  transition:color 0.3s;
}

.g-mega-footer a:hover {
  color:var(--g-gold);
}

.g-mega-footer a::after {
  content:" →";
  transition:margin-left 0.3s;
}

.g-mega-footer a:hover::after {
  margin-left:4px;
}

@media (max-width:767px) {
  .g-featured {
    padding:44px 20px;
  }

  .g-featured .g-featured-inner {
    grid-template-columns:1fr;
    justify-items:center;
    gap:24px;
  }

  .g-featured .g-featured-img {
    width:min(100%,350px);
    max-width:min(100%,350px);
    min-height:0;
    aspect-ratio:1/1;
    margin-left:auto;
    margin-right:auto;
    padding:14px;
  }

  .g-featured .g-featured-content {
    width:100%;
    max-width:350px;
    margin:0 auto;
    text-align:center;
  }

}

body .gc-home-hero {
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

body .gc-home-hero-video {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
}

body .gc-home-hero-overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(160deg,rgba(8,12,24,.50) 0%,rgba(13,20,32,.45) 40%,rgba(17,24,39,.45) 70%,rgba(10,14,24,.55) 100%);
  z-index:1;
}

body .gc-home-hero-content {
  position:relative;
  z-index:2;
  max-width:760px;
  text-align:center;
  margin:0 auto;
}

body .gc-home-hero-actions {
  justify-content:center;
}
