﻿/*
Theme Name: HanabiAI Theme - Lanhu Design
Theme URI: https://hanabiai.com
Author: HanabiAI
Description: Pixel-perfect Lanhu design
*/

/* Global prevention of horizontal scrolling */
html,
body {
  font-family: "Source Han Sans JP", sans-serif;
  color: rgba(51, 51, 51, 1);
}

p,
span,
a,
li,
ul,
ol,
h1,
h2,
h3,
h4,
h5,
h6,
html,
body,
img {
  margin: 0;
  padding: 0;
}

/* version: 4.1.0 * /Import Lanhu utilities  */
@import url("lanhu-common.css");

/* Import complete Lanhu styles */
@import url("lanhu-styles.css");

/* WordPress overrides */
html {
  overflow-x: hidden;
  overflow-y: auto;
  width: 100% !important;
  box-sizing: border-box;
}

body {
  width: 100%;
  overflow-x: hidden;
  box-sizing: border-box;
}

/* Desktop minimum width */
@media screen and (min-width: 1100px) {
  html {
    min-width: 1100px;
  }
}

#main {
  margin-top: -22px !important;
}

#main section:nth-child(1) {
  /* padding-top: 150px !important;
  padding-left: 20px !important;
  padding-right: 20px !important; */
  height: 810px;
  box-sizing: border-box;
}

/* Mobile responsive height */
@media screen and (max-width: 768px) {
  #main section:nth-child(1) {
    height: auto;
    min-height: 500px;
  }
}

.text-center {
  text-align: center !important;
}

/* Ensure the main content area can expand */
.box_1,
.tech-page-wrapper,
.vision-page-wrapper,
.company-page-wrapper {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* Header navigation styles - Basic styles (detailed styles in header-styles.css) */
.group_1 a {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.group_1 a:hover {
  opacity: 0.6;
}

/* Logo wrapper */
.group_1>a:first-child {
  margin-right: auto !important;
}

.text-wrapper_1 {
  width: auto !important;
  display: flex;
  align-items: center;
  gap: 5px;
  margin: 0 !important;
  cursor: pointer;
}

/* Menu items spacing */
.group_1>a:not(:first-child) {
  margin-left: 20px;
}

/* Careers/Contact nav item styling */
.text_38 {
  width: auto !important;
  height: 22px;
  color: rgba(51, 51, 51, 1);
  font-size: 16px;
  font-family: Source Han Sans JP-Regular;
  text-align: right;
  line-height: 22px;
}

.home-hero-section,
.tech-hero-section,
.vision-hero-section,
.company-hero-section,
.news-hero-section,
.careers-hero-section,
.contact-hero-section {
  background-image: url("img/technology/bg5.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.tech-section-hibana,
.careers-section-who {
  background-image: url("img/technology/bg2.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.home-bg-img {
  position: absolute;
  top: 0px;
  right: -60px;
  z-index: -1;
}

.vision-section-beliefs,
.home-section-explore,
.tech-section-compute,
.tech-section-engagement {
  background-image: url("img/technology/bg1.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.home-section-collaboration .home-section-header,
.home-section-careers .home-section-header,
.home-section-contact .home-section-header,
.tech-section-soc .tech-section-header,
.tech-section-Platform .tech-section-header {
  text-align: center;
  width: 800px;
  margin: 0 auto;
}

/* Buttons - Used in multiple pages */
.home-btn {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 14px 50px;
  border-radius: 38px;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.3s ease;
  border: none;
  cursor: pointer;
  color: rgba(51, 51, 51, 1);
  gap: 10px;
}

.home-btn-primary {
  margin-top: 24px;
  background-color: rgba(231, 231, 231, 1);
  color: rgba(51, 51, 51, 1);
}

.home-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.home-btn-About {
  background-color: rgba(238, 238, 238, 1);
}

.home-btn-secondary {
  background-color: rgba(255, 255, 255, 0.8);
}

.home-btn-secondary:hover,
.home-btn-About:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.home-btn-light {
  background-color: rgba(255, 255, 255, 1);
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.home-btn-light:hover {
  background-color: rgba(255, 255, 255, 0.9);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.mt-50 {
  margin-top: 50px !important;
}

.mt-100 {
  margin-top: 100px;
}

.Models-text {
  font-size: 16px;
  color: #666;
  margin-top: 24px;
}

.text-left {
  text-align: left !important;
  width: 100% !important;
}

/* Desktop only: apply min-width */
@media screen and (min-width: 1100px) {
  .text-left {
    min-width: 1250px !important;
  }
}

.vision-section-scenes,
.vision-section-beliefs {
  padding: 80px 0;
}

/* Hero Title Alignment Utilities */
.align-right {
  display: block;
  text-align: right;
  width: 100%;
}

.align-center {
  display: block;
  text-align: center;
  width: 100%;
}