/*
Theme Name: DivineYoga Elementor
Theme URI: https://gracethemes.com/themes/free-spiritual-wordpress-theme/
Author: Grace Themes (converted for Elementor)
Description: Elementor-ready conversion of the DivineYoga FSE block theme. On activation it creates Home, About Us, Services, Contact and Blog pages already built with Elementor, sets the front page and builds the main menu. Header and footer are classic PHP (editable from Customizer + Menus).
Version: 1.0.0
License: GNU General Public License version 2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: divineyoga-elementor
Requires PHP: 7.4
Tags: elementor, yoga, one-column, two-columns, right-sidebar, custom-menu, featured-images, translation-ready
*/

:root{
  --dy-primary:#ff5700; --dy-secondary:#0bb482; --dy-heading:#282828; --dy-body:#5d5d5d;
  --dy-dark:#3d422f; --dy-dark-2:#484f39;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:"Poppins",sans-serif;font-size:16px;line-height:1.5;color:var(--dy-body);background:#fff}
h1,h2,h3,h4,h5,h6{font-family:"Playfair Display",serif;color:var(--dy-heading);font-weight:600;line-height:1.2;margin:0 0 .6em}
a{color:var(--dy-primary);text-decoration:none}
a:hover{color:var(--dy-secondary)}
img{max-width:100%;height:auto}
.dy-container{max-width:1170px;margin:0 auto;padding:0 15px}
.clear{clear:both}
.screen-reader-text{position:absolute;left:-9999px}

/* ---------- Header ---------- */
.site-main-header{position:relative}
.dy-head-top{background:#fff;padding:20px 0}
.dy-head-top .dy-container{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.dy-logo .site-title{font:700 32px/1.2 "Playfair Display",serif;margin:0}
.dy-logo .site-title a{color:#282828}
.dy-logo img{max-height:70px;width:auto}
.dy-head-info{display:flex;gap:30px;flex-wrap:wrap;justify-content:flex-end}
.dy-info-item{display:flex;align-items:center;gap:12px}
.dy-info-item h6{font-size:20px;font-weight:700;margin:0 0 2px}
.dy-info-item p{margin:0;font-size:15px}
.dy-nav-bar{background:#f6f5f5}
.dy-nav-bar .dy-container{display:flex;align-items:center;justify-content:space-between;gap:20px}
.dy-menu{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
.dy-menu li{position:relative}
.dy-menu a{display:block;padding:18px 20px 18px 0;margin-right:10px;color:#282828;font:600 17px "Poppins",sans-serif}
.dy-menu li.current-menu-item>a,.dy-menu a:hover{color:var(--dy-secondary)}
.dy-menu .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:210px;background:#fff;list-style:none;margin:0;padding:10px 20px;z-index:99;box-shadow:0 5px 20px rgba(0,0,0,.1)}
.dy-menu li:hover>.sub-menu{display:block}
.dy-menu .sub-menu li{border-bottom:1px solid #ddd;padding:5px 0}
.dy-menu .sub-menu li:last-child{border:0}
.dy-menu .sub-menu a{padding:8px 0;margin:0;font-size:15px}
.dy-social{display:flex;gap:14px;list-style:none;margin:0;padding:0}
.dy-social a{color:#282b3d;font-size:14px;font-weight:600}
.dy-book-btn{background:#4baf4f;color:#fff!important;padding:12px 28px;font-weight:500;display:inline-block;line-height:1.8}
.dy-book-btn:hover{background:var(--dy-secondary)}
.dy-menu-toggle{display:none;background:none;border:0;font-size:28px;cursor:pointer;padding:10px}

/* ---------- Content ---------- */
.site-content{min-height:300px}
.dy-main{padding:60px 0}
.dy-layout{display:flex;gap:40px;flex-wrap:wrap}
.dy-layout .dy-primary{flex:1 1 60%;min-width:0}
.dy-layout .dy-secondary{flex:1 1 30%;min-width:260px}
.dy-page-box,.dy-post-box{padding:30px;border-radius:5px;box-shadow:0 0 30px rgba(193,193,193,.3);margin-bottom:25px;display:flow-root}
.entry-title{font-size:32px;font-weight:600}
.entry-title a{color:var(--dy-primary)}
.entry-meta{font-size:14px;margin-bottom:10px}
.entry-meta a{color:var(--dy-body)}
.post-thumb{margin-bottom:20px}
.more-link,.dy-readmore{display:inline-block;background:var(--dy-primary);color:#fff!important;padding:10px 20px;border-radius:10px}
.more-link:hover,.dy-readmore:hover{background:var(--dy-secondary)}
.pagination,.navigation.pagination{margin-top:30px}
.page-numbers{display:inline-block;padding:6px 12px;border:1px solid #ddd;margin-right:4px}
.page-numbers.current{background:var(--dy-primary);color:#fff;border-color:var(--dy-primary)}

/* ---------- Sidebar ---------- */
.widget{padding:30px;border-radius:10px;margin-bottom:30px;box-shadow:0 0 30px rgba(193,193,193,.3)}
.widget-title{font-size:26px;font-weight:700}
.widget ul{margin:0;padding-left:18px}
.widget li{margin-bottom:8px}

/* ---------- Footer ---------- */
.site-footer{background:var(--dy-dark);color:#b2b1b1;position:relative;overflow:hidden}
.site-footer a{color:#b2b1b1}
.site-footer a:hover{color:var(--dy-primary)}
.site-footer h3{color:#fff;font-size:26px;margin-bottom:25px}
.dy-footer-cols{display:flex;gap:30px;flex-wrap:wrap}
.dy-footer-col{padding:50px 0}
.dy-footer-col.c1{flex:35%}.dy-footer-col.c2,.dy-footer-col.c3{flex:15%}
.dy-footer-col.c4{flex:35%;background:var(--dy-dark-2);padding:50px 30px;position:relative}
.dy-footer-col.c4::after{content:"";position:absolute;top:0;bottom:0;left:100%;width:999999px;background:var(--dy-dark-2)}
.dy-footer-row{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}
.dy-footer-row img{margin-top:3px}
.Footer-QuickLinks{list-style:none;padding:0;margin:0}
.Footer-QuickLinks li{padding:5px 0}
.footer-social{display:flex;gap:10px;list-style:none;padding:25px 0 0;margin:0}
.footer-social a{display:flex;width:40px;height:40px;align-items:center;justify-content:center;background:#222;color:#fff;border-radius:10px;font-size:13px;font-weight:600}
.footer-social a:hover{background:var(--dy-primary);color:#fff}
.footer-latest-news{list-style:none;padding:0;margin:0}
.footer-latest-news li{margin-bottom:18px}
.footer-latest-news small{display:block;opacity:.7}
.dy-copy{background:var(--dy-dark-2);color:#909093}
.dy-copy .dy-container{display:flex;flex-wrap:wrap}
.dy-copy .l{flex:68.5%;padding:22px 0}
.dy-copy .r{flex:31.5%;padding:22px 30px;background:var(--dy-dark);position:relative}
.dy-copy .r::after{content:"";position:absolute;top:0;bottom:0;left:100%;width:999999px;background:var(--dy-dark)}
.dy-copy p{margin:0}
.dy-copy a{color:#909093}

/* ---------- Elementor sections (converted from block patterns) ---------- */
.elementor-widget-container{font-family:inherit}
.services_4cols .elementor-widget-image:first-child img{transition:opacity .3s}
.services_4cols:hover .elementor-widget-image:first-child img{opacity:.3}
.services_4cols .elementor-widget-image:first-child{background:var(--dy-secondary);border-radius:10px}
.services_4cols .read_more{display:flex;justify-content:center}
.services_4cols .read_more .elementor-widget-container{background:#900;padding:5px;border-radius:18px 0 18px 0;display:inline-block;line-height:0}
.services_4cols .read_more a{display:block;padding:13px;line-height:12px}
.services_4cols:hover .read_more .elementor-widget-container{background:var(--dy-secondary)}
.dy-hero-btn .elementor-button:hover{background:var(--dy-secondary)!important;color:#fff!important}
.fse-sections-02 .elementor-icon-list-text{font-size:17px}

/* ---------- 404 ---------- */
.dy-404{background:#edebeb;text-align:center;padding:90px 20px}
.dy-404 h1{font-size:120px;color:#878e96;margin:0}

/* ---------- Responsive ---------- */
@media (max-width:991px){
  .dy-head-info{justify-content:flex-start}
  .dy-footer-col.c4::after,.dy-copy .r::after{display:none}
  .dy-footer-col.c1,.dy-footer-col.c2,.dy-footer-col.c3,.dy-footer-col.c4{flex:1 1 45%}
}
@media (max-width:767px){
  .dy-menu-toggle{display:block}
  .dy-nav-bar .dy-container{flex-wrap:wrap}
  .dy-menu-wrap{display:none;width:100%;order:3}
  .dy-menu-wrap.open{display:block}
  .dy-menu{flex-direction:column}
  .dy-menu a{padding:12px 0;margin:0}
  .dy-menu .sub-menu{position:static;box-shadow:none;display:block;padding:0 0 0 15px}
  .dy-footer-col.c1,.dy-footer-col.c2,.dy-footer-col.c3,.dy-footer-col.c4{flex:1 1 100%}
  .dy-copy .l,.dy-copy .r{flex:1 1 100%}
  .dy-404 h1{font-size:80px}
}

/* ---------- Latest news shortcode ---------- */
.dy-news-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}
.dy-news-card{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 0 30px rgba(193,193,193,.3)}
.dy-news-card img{width:100%;height:320px;object-fit:cover;display:block}
.dy-news-body{padding:25px}
.dy-news-date{font-size:14px;color:var(--dy-primary)}
.dy-news-body h3{font-size:24px;margin:8px 0 10px}
.dy-news-body h3 a{color:var(--dy-heading)}
.dy-news-body h3 a:hover{color:var(--dy-primary)}
.dy-news-body p{margin:0}
@media (max-width:767px){.dy-news-grid{grid-template-columns:1fr}}

/* ---------- WooCommerce products (store section) ---------- */
.dy-store ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;list-style:none;margin:0;padding:0}
.dy-store ul.products li.product{background:#fff;border-radius:10px;padding:15px;text-align:center;float:none;width:auto;margin:0}
.dy-store ul.products li.product img{width:100%;height:auto;border-radius:8px}
.dy-store .woocommerce-loop-product__title{font-size:18px;font-family:"Playfair Display",serif;color:var(--dy-heading)}
.dy-store .price{color:var(--dy-primary);font-weight:600;display:block;margin-bottom:10px}
.dy-store a.button{background:var(--dy-primary);color:#fff;padding:10px 20px;border-radius:50px;display:inline-block}
.dy-store a.button:hover{background:var(--dy-secondary)}
@media (max-width:991px){.dy-store ul.products{grid-template-columns:repeat(2,1fr)}}
@media (max-width:575px){.dy-store ul.products{grid-template-columns:1fr}}

/* ---------- Elementor extras ---------- */
.dy-class-cta .elementor-button:hover{background:var(--dy-secondary)!important}
.dy-price-btn .elementor-button:hover{background:var(--dy-secondary)!important}
.elementor-widget-testimonial .elementor-testimonial-content{margin-bottom:15px}
