/*
Theme Name: ISWM Community
Author: Deen Apps
Description: ISWM homepage design with existing WordPress menus, responsive dropdown navigation and standard content templates.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: iswm-community
*/

    html { scroll-behavior: smooth; }
    body { font-family: "DM Sans", sans-serif; }

    .islamic-pattern {
      background-image:
        linear-gradient(rgba(9, 58, 51, 0.965), rgba(9, 58, 51, 0.965)),
        url("assets/pattern.png");
      background-size: auto, 700px;
    }

    .light-pattern {
      background-color: #f7f4ec;
      background-image:
        linear-gradient(rgba(247, 244, 236, 0.91), rgba(247, 244, 236, 0.91)),
        url("assets/pattern.png");
      background-size: auto, 650px;
    }

    .nav-link { position: relative; }
    .nav-link::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: -7px;
      width: 0;
      height: 2px;
      border-radius: 999px;
      background: #dca90b;
      transition: width 0.25s ease;
    }
    .nav-link:hover::after,
    .nav-link:focus-visible::after { width: 100%; }

    .js .reveal {
      opacity: 0;
      transform: translateY(20px);
      transition: opacity 0.7s ease, transform 0.7s ease;
    }
    .js .reveal.visible { opacity: 1; transform: translateY(0); }

    .lift { transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease; }
    .lift:hover { transform: translateY(-6px); box-shadow: 0 20px 60px rgba(5,37,31,.12); }

    .prayer-frame iframe {
      display: block;
      width: 100%;
      min-height: 300px;
      border: 0;
      background: white;
    }

    /* Decorative geometric accents */
    .geo-diamond {
      position: absolute;
      width: 92px;
      height: 92px;
      border: 2px solid currentColor;
      transform: rotate(45deg);
      pointer-events: none;
    }
    .geo-diamond::after {
      content: "";
      position: absolute;
      inset: 16px;
      border: 1px solid currentColor;
    }
    .geo-ring {
      position: absolute;
      width: 150px;
      height: 150px;
      border: 22px solid currentColor;
      border-radius: 999px;
      pointer-events: none;
    }
    .geo-grid {
      position: absolute;
      width: 180px;
      height: 180px;
      opacity: .08;
      background-image:
        linear-gradient(45deg, currentColor 1px, transparent 1px),
        linear-gradient(-45deg, currentColor 1px, transparent 1px);
      background-size: 24px 24px;
      pointer-events: none;
    }

    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      .js .reveal { opacity: 1; transform: none; transition: none; }
      * { animation-duration: .01ms !important; transition-duration: .01ms !important; }
    }
  
.site-header { top:0; }
.admin-bar .site-header { top:32px; }
.site-brand { max-width:340px; flex-shrink:0; }
.iswm-menu,.iswm-menu ul { list-style:none; margin:0; padding:0; }
.iswm-menu a { display:block; font-size:14px; font-weight:600; color:#334155; padding:12px 0; text-decoration:none; }
.iswm-menu a:hover,.iswm-menu .current-menu-item>a { color:#0d594b; }
.iswm-menu li { position:relative; }
.iswm-menu .menu-cta>a { background:#f3c51c; color:#05251f; border-radius:999px; padding:12px 20px; font-weight:700; }
.submenu-toggle { border:0; background:transparent; color:#0d594b; padding:8px; border-radius:6px; cursor:pointer; }
.submenu-toggle:focus-visible, .iswm-menu a:focus-visible { outline:2px solid #b98206; outline-offset:3px; }
.iswm-menu .menu-item-has-children>a { display:inline-block; }
.iswm-menu .sub-menu a { padding:10px 16px; white-space:normal; }
.iswm-menu .sub-menu { padding-left:16px; }
.js .iswm-menu .sub-menu { display:none; }
.js .iswm-menu .submenu-open>.sub-menu { display:block; }
#mobile-menu .iswm-menu>li>a { padding:12px 16px; }
#mobile-menu .iswm-menu .menu-cta>a { margin-top:10px; text-align:center; }
.menu-empty { font-size:14px; padding:10px; }
.footer-menu { list-style:none; margin-top:20px; }
.footer-menu a { display:inline-block; color:#d5efe6; padding:5px 0; font-size:14px; }
.footer-menu a:hover { color:#f9d546; }
.footer-menu .sub-menu { padding-left:14px; }
.entry-content { line-height:1.8; overflow-wrap:anywhere; }
.entry-content>* { margin-top:1.2em; margin-bottom:1.2em; }
.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4 { font-family:'Playfair Display',serif; line-height:1.3; font-weight:700; color:#093a33; }
.entry-content h1 { font-size:2.6rem; }.entry-content h2 { font-size:2rem; }.entry-content h3 { font-size:1.5rem; }
.entry-content ul { list-style:disc; padding-left:1.5em; }.entry-content ol { list-style:decimal; padding-left:1.5em; }
.entry-content a { color:#11715e; text-decoration:underline; }.entry-content img { max-width:100%; height:auto; }
.entry-content blockquote { border-left:4px solid #f3c51c; padding-left:24px; }
.entry-content input:not([type=checkbox]):not([type=radio]),.entry-content textarea,.search-form input { border:1px solid #addfce; padding:10px; border-radius:8px; max-width:100%; }
.entry-content button,.search-submit,.form-submit input { background:#0d594b; color:white; border-radius:8px; padding:10px 20px; }
.alignwide { max-width:1200px; }.aligncenter { margin-left:auto; margin-right:auto; }
.wp-caption-text,.gallery-caption { font-size:.875rem; }.sticky { }.bypostauthor { }
.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(min-width:1024px) {
 .iswm-menu { display:flex; align-items:center; gap:20px; flex-wrap:wrap; justify-content:flex-end; }
 .iswm-menu .sub-menu { position:absolute; top:100%; left:0; width:240px; padding:8px; background:#fff; border:1px solid #d5efe6; border-radius:12px; box-shadow:0 12px 36px #05251f22; z-index:60; }
 .iswm-menu>li:last-child>.sub-menu { left:auto; right:0; }
 .iswm-menu .sub-menu .sub-menu { top:0; left:auto; right:100%; }
 .iswm-menu .sub-menu a { display:block; }
 .iswm-menu li:hover>.sub-menu,.iswm-menu li:focus-within>.sub-menu { display:block; }
}
@media(max-width:782px) { .admin-bar .site-header { top:46px; } }
@media(max-width:600px) { .admin-bar .site-header { top:0; } }
.no-js #menu-toggle { display:none; }.no-js #mobile-menu { display:block; }
@media(min-width:1024px) { .no-js #mobile-menu { display:none; } }
