/*
Theme Name: Lightning
Text Domain: lightning
Theme URI: https://lightning.vektor-inc.co.jp/en/
Description: Lightning is a very simple & easy to customize theme which is based on the Bootstrap. It is also very friendly with custom post types and custom taxonomies. When you add a new one, the breadcrumbs will be adjusted and posts will look beautifully without editing or adding a template files.
Author: Vektor,Inc.
Author URI: https://www.vektor-inc.co.jp
Version: 15.42.0
Requires at least: 6.6
Tested up to: 6.9
Requires PHP: 7.4
Tags: blog, one-column, custom-background, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, wide-blocks
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Lightning WordPress theme, Copyright (C) 2015-2026 Vektor,Inc.
Lightning WordPress theme is licensed under the GPL.

Lightning WordPress Theme bundles the following third-party resources:

Font Awesome icon font, Copyright 2012 Fonticons, Inc.
its fonts are licensed under the terms of the SIL OFL License 1.1, and its code is licensed under the terms of the MIT license
Source: https://fontawesome.com/

Bootstrap framework, Copyright 2011 Bootstrap Authors and Twitter, Inc.
Bootstrap is licensed under the terms of the MIT license
Source: https://getbootstrap.com/

CSS Simple Tree Shaking
CSS Simple Tree Shaking is licensed under the terms of the GNU General Public License v2 license
Source: https://celtislab.net/
*/
.hero-banner {
            position: relative;
            padding: 90px 20px;
            text-align: center;
            background-color: #ffffff;
            /* Dotted Grid Pattern CSS */
            background-image: radial-gradient(#d1d1d1 1.2px, transparent 1.2px);
            background-size: 24px 24px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            min-height: 420px;
        }

        .hero-title {
            font-family: 'Jost', sans-serif;
            font-size: 42px;
            font-weight: 700;
            color: #222222;
            line-height: 1.25;
            max-width: 800px;
            margin-bottom: 35px;
        }

        /* Responsive Search Bar Container */
        .search-container {
            width: 100%;
            max-width: 650px;
            display: flex;
            background: #ffffff;
            border: 1px solid #cccccc;
            border-radius: 6px;
            overflow: hidden;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
            transition: border-color 0.3s, box-shadow 0.3s;
        }

        .search-container:focus-within {
            border-color: #0F2B93;
            box-shadow: 0 4px 20px rgba(15, 43, 147, 0.1);
        }

        .search-input {
            flex: 1;
            padding: 16px 20px;
            border: none;
            outline: none;
            font-size: 16px;
            color: #333333;
            font-family: 'Open Sans', sans-serif;
        }

        .search-input::placeholder {
            color: #888888;
        }

        .search-btn {
            background-color: #F54729;
            color: #ffffff;
            border: none;
            padding: 0 25px;
            cursor: pointer;
            font-size: 18px;
            transition: background-color 0.3s;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .search-btn:hover {
            background-color: #d93d20;
        }

        /* Responsive Breakpoints */
        @media (max-width: 768px) {
            .hero-title {
                font-size: 30px;
                padding: 0 10px;
            }
            .hero-banner {
                padding: 60px 15px;
            }
            .search-container {
                max-width: 90%;
            }
        }






/* ===== AIRLINEPORTINFO HOMEPAGE DESIGN ===== */

.airline-home {
    --ap-blue: #0877c9;
    --ap-navy: #102b46;
    --ap-text: #26384b;
    --ap-muted: #6c7b8b;
    color: var(--ap-text);
    font-family: Arial, sans-serif;
}

.airline-home * {
    box-sizing: border-box;
}

.airline-hero {
    background:
        linear-gradient(90deg,rgba(5,22,40,.94),rgba(8,53,87,.78)),
        url("https://images.unsplash.com/photo-1436491865332-7a61a109cc05?auto=format&fit=crop&w=1800&q=85");
    background-size: cover;
    background-position: center;
    color: #fff;
    padding: 95px 22px 75px;
}

.airline-hero-content {
    max-width: 1120px;
    margin: auto;
}

.airline-breadcrumb {
    font-size: 12px;
    letter-spacing: 1.5px;
    color: #b9d9f1;
    margin-bottom: 22px;
}

.airline-hero h1 {
    color: #fff;
    max-width: 800px;
    font-size: clamp(34px,5vw,56px);
    line-height: 1.15;
    margin: 0 0 20px;
    font-weight: 800;
}

.airline-hero p {
    max-width: 700px;
    font-size: 18px;
    line-height: 1.8;
    color: #e0ebf5;
}

.airline-search {
    display: flex;
    max-width: 780px;
    margin: 30px 0 20px;
    background: #fff;
    border-radius: 8px;
    padding: 6px;
    gap: 8px;
    box-shadow: 0 10px 35px #0003;
}

.airline-search input {
    flex: 1;
    min-width: 0;
    border: 0 !important;
    outline: 0;
    box-shadow: none !important;
    padding: 16px;
    font-size: 15px;
    background: transparent;
}

.airline-search button {
    border: 0;
    border-radius: 6px;
    padding: 0 30px;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    background: linear-gradient(110deg,#0877c9,#20a5e8,#0877c9);
    background-size: 200% 100%;
    transition: .3s;
}

.airline-search button:hover {
    background-position: 100% 0;
}

.airline-search-links {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 25px;
}

.airline-search-links a {
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
}

.airline-search-links a:hover {
    text-decoration: underline;
}

.airline-container {
    max-width: 1180px;
    padding: 60px 22px;
    margin: auto;
}

.airline-section-title {
    margin-bottom: 32px;
}

.airline-section-title > span {
    color: var(--ap-blue);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.8px;
}

.airline-section-title h2 {
    color: var(--ap-navy);
    font-size: clamp(27px,4vw,36px);
    line-height: 1.25;
    margin: 10px 0;
    font-weight: 800;
}

.airline-section-title p {
    color: var(--ap-muted);
    line-height: 1.7;
    margin: 0;
}

.airline-title-row {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
}

.airline-view-all {
    color: var(--ap-blue);
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.airline-directory-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 22px;
}

.airline-directory-box {
    display: block;
    padding: 27px;
    border: 1px solid #e1e9f1;
    border-radius: 10px;
    background: #fff;
    text-decoration: none !important;
    box-shadow: 0 5px 20px #0e2b4609;
    transition: .25s;
}

.airline-directory-box:hover {
    transform: translateY(-5px);
    border-color: #9bcff2;
    box-shadow: 0 12px 28px #0e2b4615;
}

.directory-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 9px;
    background: #e8f4fd;
    color: var(--ap-blue);
    font-size: 26px;
}

.airline-directory-box h3 {
    color: var(--ap-navy);
    font-size: 21px;
    margin: 18px 0 10px;
}

.airline-directory-box p {
    color: var(--ap-muted);
    line-height: 1.7;
    min-height: 48px;
}

.airline-directory-box strong {
    display: inline-block;
    color: var(--ap-blue);
    margin-top: 10px;
}

.airline-directory-section {
    background: #f3f7fb;
}

.airline-directory-section > .airline-container {
    max-width: 1224px;
}

.airline-content-grid {
    display: grid;
    grid-template-columns: minmax(0,3fr) minmax(220px,1fr);
    gap: 25px;
}

.airline-main-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 22px;
}

.airline-info-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e2e9f0;
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 5px 18px #0c29420a;
    transition: transform .25s, box-shadow .25s;
}

.airline-info-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 25px #0c294216;
}

.airline-card-image {
    display: block;
    height: 165px;
    overflow: hidden;
    background: #e7f1fa;
}

.airline-card-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s;
}

.airline-info-card:hover .airline-card-image img {
    transform: scale(1.04);
}

.airline-placeholder {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #17639c;
    font-weight: 700;
    background: linear-gradient(135deg,#e8f4ff,#cfe5f8);
}

.airline-card-body {
    padding: 20px;
}

.airline-card-body h3 {
    font-size: 19px;
    line-height: 1.4;
    margin: 0 0 12px;
}

.airline-card-body h3 a {
    color: var(--ap-navy);
    text-decoration: none;
}

.airline-card-body p {
    color: var(--ap-muted);
    font-size: 14px;
    line-height: 1.7;
}

.airline-card-body small {
    color: var(--ap-muted);
}

.airline-read-more {
    color: var(--ap-blue);
    font-weight: 700;
    text-decoration: none;
    font-size: 14px;
}

.airline-read-more:hover,
.airline-view-all:hover {
    text-decoration: underline;
}

.airline-sidebar {
    background: #fff;
    border: 1px solid #e1e9f1;
    border-radius: 9px;
    padding: 24px;
    align-self: start;
}

.airline-sidebar h3 {
    font-size: 19px;
    color: var(--ap-navy);
    margin-top: 0;
}

.airline-sidebar p,
.airline-sidebar li {
    color: var(--ap-muted);
    line-height: 1.7;
    font-size: 14px;
}

.airline-sidebar a {
    color: var(--ap-blue);
    text-decoration: none;
    font-weight: 600;
}

.airline-sidebar ul {
    padding-left: 20px;
}

.airline-sidebar hr {
    border: 0;
    border-top: 1px solid #e5edf4;
    margin: 24px 0;
}

.airline-empty {
    grid-column: 1/-1;
    padding: 22px;
    background: #fff;
    border-radius: 8px;
    color: var(--ap-muted);
}

.airline-bottom-cta {
    text-align: center;
    color: #fff;
    background: linear-gradient(120deg,#071a2d,#0a4b7b);
    padding: 65px 20px;
}

.airline-bottom-cta h2 {
    color: #fff;
    font-size: clamp(28px,4vw,40px);
    margin: 0 0 15px;
}

.airline-bottom-cta p {
    color: #d8e8f6;
    line-height: 1.7;
}

.airline-bottom-cta a {
    display: inline-block;
    margin-top: 18px;
    padding: 15px 25px;
    color: #fff;
    background: var(--ap-blue);
    border-radius: 6px;
    font-weight: 700;
    text-decoration: none;
}

@media(max-width:900px) {
    .airline-content-grid {
        grid-template-columns: 1fr;
    }

    .airline-main-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .airline-directory-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media(max-width:560px) {
    .airline-hero {
        padding: 55px 18px;
    }

    .airline-search {
        flex-direction: column;
    }

    .airline-search button {
        padding: 15px;
    }

    .airline-main-grid,
    .airline-directory-grid {
        grid-template-columns: 1fr;
    }

    .airline-title-row {
        align-items: start;
        flex-direction: column;
    }

    .airline-container {
        padding: 42px 16px;
    }

    .airline-hero p {
        font-size: 16px;
    }
}


