/*
Theme Name: Twenty Twenty-Five
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: 0.1em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
caption,
figcaption,
p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}









/* === ساختار کلی هدر سفارشی === */

.site-header-custom {
    direction: rtl;
    background: radial-gradient(circle at top left, #1e4b7a 0, #0c1a2a 40%, #050710 100%);
    color: #f5f7fb;
    padding: 0.75rem 2.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    box-shadow: 0 10px 30px rgba(0,0,0,0.35);
    position: relative;
    overflow: hidden;
}

/* هاله‌های نور پس‌زمینه */
.site-header-custom::before,
.site-header-custom::after {
    content: "";
    position: absolute;
    inset: auto;
    width: 260px;
    height: 260px;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(214,167,94,0.45), transparent 65%);
    opacity: 0.6;
    pointer-events: none;
}
.site-header-custom::before {
    top: -120px;
    right: -80px;
}
.site-header-custom::after {
    bottom: -150px;
    left: -120px;
}

/* لوگو */
.site-header-custom .header-logo {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    position: relative;
    z-index: 1;
}
.site-header-custom .header-logo img {
    max-height: 54px;
    width: auto;
    display: block;
    filter: drop-shadow(0 4px 10px rgba(0,0,0,0.35));
    transition: transform 0.25s ease, filter 0.25s ease;
}
.site-header-custom .header-logo:hover img {
    transform: translateY(-2px) scale(1.02);
    filter: drop-shadow(0 6px 14px rgba(0,0,0,0.45));
}

/* اطلاعات تماس */
.header-contacts {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
    font-size: 0.85rem;
    position: relative;
    z-index: 1;
}

.hc-group {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    background: rgba(7, 16, 33, 0.68);
    padding: 0.35rem 0.75rem;
    border-radius: 999px;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(10px);
}

.hc-item {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}
.hc-item + .hc-item {
    margin-right: 0.5rem;
    border-right: 1px solid rgba(255,255,255,0.06);
    padding-right: 0.5rem;
}

.hc-label {
    opacity: 0.8;
    font-size: 0.78rem;
}

.hc-value,
.hc-value a {
    font-weight: 500;
}

.header-contacts a {
    color: #fdfdfd;
    text-decoration: none;
    position: relative;
}
.header-contacts a::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -2px;
    width: 0;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, #fdd18a, #f5a623);
    transition: width 0.25s ease;
}
.header-contacts a:hover::after {
    width: 100%;
}

/* آیکن‌های اطلاعات تماس */
.hc-icon {
    width: 26px;
    height: 26px;
    border-radius: 999px;
    background: radial-gradient(circle at 30% 30%, #ffe6b2 0, #f5a623 40%, #c07a12 100%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #11141f;
    font-size: 13px;
    flex-shrink: 0;
    box-shadow: 0 4px 10px rgba(0,0,0,0.4);
}

/* استفاده از کاراکترهای یونی‌کد برای آیکن‌ها  */
.hc-icon-phone::before {
    content: "☎";
}
.hc-icon-email::before {
    content: "✉";
}
.hc-icon-location::before {
    content: "📍";
}

/* شبکه‌های اجتماعی */
.header-socials {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: 0.4rem;
    position: relative;
    z-index: 1;
}

.header-socials .hs-item {}

.header-socials .hs-link {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem 0.6rem;
    border-radius: 999px;
    text-decoration: none;
    color: #f5f7fb;
    background: rgba(255,255,255,0.04);
    box-shadow: 0 0 0 1px rgba(255,255,255,0.05);
    font-size: 0.82rem;
    transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.header-socials .hs-icon-wrap {
    width: 24px;
    height: 24px;
    border-radius: 999px;
    background: radial-gradient(circle at 30% 30%, #ffffff 0, #d6a75e 40%, #8b5a20 100%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.header-socials .hs-icon {
    font-size: 13px;
}

.header-socials .hs-icon-dot {
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: #11141f;
}

.header-socials .hs-link:hover {
    background: rgba(255,255,255,0.12);
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(0,0,0,0.35);
}

/* سوییچر زبان */
.header-lang-switcher {
    position: relative;
    z-index: 1;
}
.header-lang-switcher ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: inline-flex;
    gap: 0.3rem;
}
.header-lang-switcher li {
    display: inline-flex;
}
.header-lang-switcher a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: rgba(0,0,0,0.25);
    box-shadow: 0 0 0 1px rgba(255,255,255,0.12);
    overflow: hidden;
}
.header-lang-switcher img {
    display: block;
    width: 22px;
    height: 22px;
    border-radius: 999px;
}

/* کلاس کمکی برای ردیف اصلی داخل هدر */
.site-header-custom .header-main-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    width: 100%;
}

/* ریسپانسیو موبایل */
@media (max-width: 960px) {
    .site-header-custom {
        flex-direction: column;
        align-items: stretch;
        padding: 0.75rem 1.25rem;
        gap: 0.75rem;
    }

    .site-header-custom .header-main-row {
        flex-direction: column;
        align-items: stretch;
        gap: 0.75rem;
    }

    .header-contacts {
        justify-content: flex-start;
    }

    .header-contacts .hc-group {
        width: 100%;
        justify-content: flex-start;
    }

    .header-socials {
        justify-content: flex-start;
        flex-wrap: wrap;
    }
}
