/*
 * Nook Luxe Engine - Inline Styles
 * Version: 2.0.3
 * Description: テーマオーバーライドと物理的高さ制御（デザイン崩れ修正版）
 * 
 * 注意: このファイルはfront-page.phpの<head>内で読み込まれます
 */

/* ==========================================
   Physical Height Enforcement
   ========================================== */
html, body {
    height: auto !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
}

/* ==========================================
   Cocoon Theme Override (完全バイパス)
   ========================================== */
.home #container, 
.home #content, 
.home #main, 
.home .entry-content, 
.home .entry-card-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 100vh !important;
    background: #ffffff !important;
    border: none !important;
    overflow: visible !important;
}

/* テーマUI非表示 */
.home #header, 
.home #navi, 
.home #sidebar, 
.home .footer, 
.home .breadcrumb, 
.home .entry-title, 
.home .ad-area,
.home .pager-post-navi,
.home .article-footer {
    display: none !important;
}

/* ==========================================
   Nook Main Wrapper
   ========================================== */
.nook-wrapper {
    position: relative !important;
    width: 100% !important;
    min-height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
    z-index: 100;
    background: #ffffff;
}

/* ==========================================
   Hero Section Fix
   ========================================== */
.nook-wrapper section[role="banner"] {
    min-height: 100vh !important;
    height: 100vh !important;
    display: flex !important;
    align-items: center !important;
}

/* ヒーロー背景画像のコンテナ */
.nook-wrapper section[role="banner"] > div:first-child {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
}

/* ヒーロー画像 */
.nook-wrapper section[role="banner"] img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* ヒーローコンテンツ */
.nook-wrapper section[role="banner"] .container {
    position: relative !important;
    z-index: 20 !important;
}

/* ==========================================
   Text Alignment Controls
   ========================================== */
.nook-wrapper * {
    text-align: left;
}

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

/* ==========================================
   Navigation Fix
   ========================================== */
#nook-nav {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 10000 !important;
}

/* ==========================================
   Button Visibility Fix
   ========================================== */
.nook-wrapper a,
.nook-wrapper button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* ==========================================
   Responsive Hero Height
   ========================================== */
@media (max-width: 640px) {
    .nook-wrapper section[role="banner"] {
        min-height: 100vh !important;
        height: auto !important;
        padding: 120px 0 60px !important;
    }
}