/*
Theme Name: YOGAR Complete
Theme URI: https://yogar.studio/
Author: YOGAR
Description: Complete bespoke WordPress theme for YOGAR Studio with classes, trainers, events, schedules, booking requests, WooCommerce styling, responsive desktop/mobile layouts, RTL support, and bundled studio media.
Version: 1.0.5
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 8.0
Text Domain: yogar
*/

:root{--yg-green:#517470;--yg-mint:#A9C7C4;--yg-cream:#F2E8DA;--yg-blush:#CFB1A6;--yg-brown:#6B4B4B;--yg-black:#121212;--yg-white:#fff;--yg-line:rgba(81,116,112,.20);--yg-radius:24px;--yg-max:1440px;--yg-shadow:0 16px 50px rgba(20,40,34,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--yg-cream);color:var(--yg-black);font-family:"Dosis",Arial,Helvetica,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}body.rtl{font-family:"Beiruti",Tahoma,Arial,sans-serif}a{color:inherit;text-decoration:none}img,video{max-width:100%;display:block}button,input,select,textarea{font:inherit}.yg-container{width:min(calc(100% - 48px),var(--yg-max));margin-inline:auto}.yg-section{padding:88px 0}.yg-kicker{font-size:12px;letter-spacing:.16em;text-transform:uppercase}.yg-title{font-size:clamp(44px,6.5vw,96px);font-weight:300;line-height:.92;color:var(--yg-green);margin:0 0 24px;letter-spacing:.02em}.yg-subtitle{font-size:clamp(20px,2vw,32px);font-weight:400}.yg-grid{display:grid;gap:24px}.yg-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.yg-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.yg-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.yg-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 24px;background:var(--yg-green);color:#fff;border:1px solid var(--yg-green);border-radius:6px;letter-spacing:.08em;text-transform:uppercase;font-size:13px;cursor:pointer;transition:.2s ease}.yg-btn:hover{transform:translateY(-1px);filter:brightness(.95)}.yg-btn.ghost{background:transparent;color:var(--yg-green)}.yg-btn.light{background:#fff;color:var(--yg-green);border-color:#fff}.yg-card{background:rgba(255,255,255,.60);border:1px solid var(--yg-line);border-radius:var(--yg-radius);overflow:hidden}.yg-card-body{padding:22px}.yg-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.yg-muted{opacity:.68}.yg-pills{display:flex;gap:8px;flex-wrap:wrap}.yg-pill{padding:7px 11px;border-radius:999px;background:rgba(81,116,112,.10);font-size:12px}.yg-meta{display:flex;gap:18px;flex-wrap:wrap;font-size:13px}.yg-divider{height:1px;background:var(--yg-line);margin:28px 0}
.site-header{position:absolute;z-index:100;left:0;right:0;top:0;color:#fff;padding:22px 0;transition:.25s}.site-header.is-scrolled{position:fixed;background:rgba(242,232,218,.94);backdrop-filter:blur(14px);color:var(--yg-black);box-shadow:0 4px 24px rgba(0,0,0,.05)}.site-header .inner{display:flex;align-items:center;gap:28px}.yg-brand{display:flex;align-items:center;margin-right:auto}.yg-brand img{width:160px;max-height:66px;object-fit:contain;object-position:left center}.site-header:not(.is-scrolled) .logo-dark{display:none}.site-header.is-scrolled .logo-light{display:none}.yg-nav{display:flex;align-items:center;gap:28px;font-size:13px;letter-spacing:.12em;text-transform:uppercase}.yg-nav ul{display:flex;list-style:none;gap:28px;margin:0;padding:0}.yg-mobile-toggle{display:none;background:none;border:0;color:inherit;font-size:28px;line-height:1}.yg-mobile-panel{display:none}
.yg-hero{min-height:94vh;position:relative;display:flex;align-items:flex-end;color:#fff;background:#20302c;overflow:hidden}.yg-hero-media{position:absolute;inset:0}.yg-hero-media img,.yg-hero-media video{width:100%;height:100%;object-fit:cover}.yg-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.55),rgba(0,0,0,.08) 65%,rgba(0,0,0,.25))}.yg-hero-content{position:relative;z-index:2;padding:150px 0 84px}.yg-hero-logo{width:min(690px,74vw);filter:brightness(0) invert(1);margin-bottom:28px}.yg-hero-actions{display:flex;gap:14px;align-items:center}.yg-scroll{position:absolute;z-index:2;right:42px;bottom:36px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;writing-mode:vertical-rl}
.yg-curve{position:relative}.yg-curve:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:56px;background:var(--yg-cream);clip-path:ellipse(64% 48% at 50% 100%)}
.yg-brand-statement{padding:90px 0 36px;text-align:center}.yg-brand-statement .words{font-size:clamp(54px,10vw,150px);line-height:.84;color:var(--yg-green);font-weight:300;letter-spacing:.04em}.yg-brand-statement p{max-width:670px;margin:28px auto 0;font-size:19px}
.yg-intro-media{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.yg-intro-media img{height:100%;object-fit:cover;border-radius:var(--yg-radius)}
.yg-classes-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.yg-class-card{position:relative}.yg-class-card h3{margin:4px 0 2px;font-size:25px;font-weight:500}.yg-class-card .arrow{font-size:22px}.yg-class-card .yg-card-body{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.yg-book-band{background:var(--yg-mint);padding:60px 0}.yg-session-list{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.yg-session{background:rgba(255,255,255,.72);border-radius:16px;padding:20px;border:1px solid rgba(255,255,255,.55)}.yg-session time{font-size:26px}.yg-session .yg-btn{width:100%;margin-top:18px;padding:10px 12px}
.yg-negar{background:rgba(255,255,255,.36)}.yg-video-card{position:relative;border-radius:var(--yg-radius);overflow:hidden;background:#111}.yg-video-card video{width:100%;max-height:720px;object-fit:cover}.yg-video-card .label{position:absolute;left:18px;bottom:18px;background:rgba(0,0,0,.5);color:#fff;padding:8px 12px;border-radius:999px;font-size:12px}
.yg-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:300px 300px;gap:14px}.yg-gallery img{width:100%;height:100%;object-fit:cover;border-radius:18px}.yg-gallery img:first-child{grid-row:1/3}
.yg-footer{padding:60px 0 20px;border-top:1px solid var(--yg-line);background:rgba(255,255,255,.25)}.yg-footer-grid{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:28px}.yg-footer h4{margin:0 0 12px;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.yg-footer ul{list-style:none;margin:0;padding:0}.yg-footer li{margin:7px 0}.yg-footer-logo{width:220px}.yg-footer-bottom{margin-top:42px;padding-top:18px;border-top:1px solid var(--yg-line);display:flex;justify-content:space-between;gap:20px;font-size:12px}
.yg-page-hero{padding:155px 0 56px;background:linear-gradient(180deg,rgba(169,199,196,.38),transparent)}.yg-page-hero .yg-title{max-width:900px}.yg-filters{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.yg-filter{border:1px solid var(--yg-line);background:rgba(255,255,255,.5);padding:9px 14px;border-radius:999px}.yg-filter.active{background:var(--yg-green);color:#fff}.yg-detail-hero{padding:145px 0 50px}.yg-detail-media img{width:100%;height:min(65vh,680px);object-fit:cover;border-radius:var(--yg-radius)}.yg-detail-side{padding:22px 10px}.yg-tabs{display:flex;gap:30px;border-bottom:1px solid var(--yg-line);margin:20px 0 30px}.yg-tabs a{padding:12px 0;border-bottom:2px solid transparent}.yg-tabs a:first-child{border-color:var(--yg-green)}
.yg-booking-wrap{padding:150px 0 90px}.yg-booking-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:28px}.yg-form{background:rgba(255,255,255,.62);border:1px solid var(--yg-line);padding:28px;border-radius:var(--yg-radius)}.yg-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.yg-form label{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin:12px 0 6px}.yg-form input,.yg-form select,.yg-form textarea{width:100%;border:1px solid var(--yg-line);background:#fff;border-radius:8px;padding:13px 14px}.yg-form textarea{min-height:110px}.yg-form .yg-btn{margin-top:18px}.yg-notice{display:none;margin-top:16px;padding:14px;border-radius:10px;background:rgba(81,116,112,.12)}.yg-notice.show{display:block}.yg-schedule{display:grid;gap:12px}.yg-schedule-row{display:grid;grid-template-columns:120px 1fr auto;gap:18px;align-items:center;background:rgba(255,255,255,.6);padding:18px;border-radius:14px;border:1px solid var(--yg-line)}.yg-capacity{font-size:12px;color:var(--yg-green)}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}.woocommerce ul.products li.product{width:auto!important;margin:0!important;background:rgba(255,255,255,.55);border:1px solid var(--yg-line);border-radius:18px;padding:12px}.woocommerce ul.products li.product img{border-radius:12px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--yg-green)!important;color:#fff!important;border-radius:6px!important}.woocommerce div.product{padding-top:140px}
@media(max-width:1000px){.yg-container{width:min(calc(100% - 30px),var(--yg-max))}.yg-nav{display:none}.yg-mobile-toggle{display:block}.site-header .yg-btn{display:none}.yg-mobile-panel.open{display:block;position:fixed;z-index:95;inset:0;background:var(--yg-cream);color:var(--yg-black);padding:105px 28px 28px}.yg-mobile-panel ul{list-style:none;margin:0;padding:0;font-size:34px}.yg-mobile-panel li{margin:18px 0}.yg-mobile-panel .yg-btn{display:inline-flex;margin-top:18px}.yg-grid-4,.yg-classes-strip,.yg-session-list{grid-template-columns:repeat(2,1fr)}.yg-footer-grid{grid-template-columns:1.5fr 1fr 1fr}.yg-booking-layout{grid-template-columns:1fr}.yg-gallery{grid-template-columns:1fr 1fr;grid-template-rows:250px 250px 250px}.yg-gallery img:first-child{grid-row:auto;grid-column:1/3}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.yg-section{padding:60px 0}.yg-grid-2,.yg-grid-3,.yg-grid-4{grid-template-columns:1fr}.yg-hero{min-height:88svh}.yg-hero-content{padding:130px 0 55px}.yg-hero-logo{width:90vw;max-width:580px}.yg-scroll{display:none}.yg-brand-statement{padding:65px 0 20px}.yg-intro-media{grid-template-columns:1fr}.yg-intro-media img:first-child{max-height:520px}.yg-classes-strip,.yg-session-list{display:grid;grid-auto-flow:column;grid-auto-columns:84%;grid-template-columns:none;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:10px}.yg-classes-strip>* ,.yg-session-list>*{scroll-snap-align:start}.yg-gallery{grid-template-columns:1fr;grid-template-rows:none}.yg-gallery img,.yg-gallery img:first-child{grid-column:auto;height:260px}.yg-footer-grid{grid-template-columns:1fr 1fr}.yg-footer-grid>div:first-child{grid-column:1/3}.yg-footer-bottom{flex-direction:column}.yg-detail-hero{padding-top:120px}.yg-booking-wrap{padding-top:120px}.yg-form-row{grid-template-columns:1fr}.yg-schedule-row{grid-template-columns:88px 1fr}.yg-schedule-row .yg-btn{grid-column:1/3;width:100%}.woocommerce ul.products{grid-template-columns:1fr!important}.site-header .yg-brand img{width:128px}}
@media(max-width:480px){.yg-footer-grid{grid-template-columns:1fr}.yg-footer-grid>div:first-child{grid-column:auto}.yg-hero-actions{flex-direction:column;align-items:flex-start}.yg-title{font-size:48px}}


/* YOGAR mobile refinement v1.0.1 */
html,body{max-width:100%;overflow-x:hidden}
.yg-grid>*{min-width:0}
.site-header .inner{direction:ltr}
.yg-mobile-panel{direction:ltr;text-align:left}
body.rtl.home main{direction:ltr;text-align:left}
body.rtl.home .yg-brand-statement{text-align:center}
.yg-brand-statement .words{direction:ltr;unicode-bidi:isolate}
.yg-intro-media,.yg-gallery{min-width:0;width:100%}
.yg-intro-media>* ,.yg-gallery>*{min-width:0;max-width:100%}

@media(max-width:700px){
  .yg-container{width:calc(100% - 32px);max-width:calc(100% - 32px);margin-inline:16px}
  .site-header{padding:14px 0}
  .site-header .inner{min-height:48px;justify-content:space-between;gap:12px}
  .site-header .yg-brand{margin-right:auto;flex:0 0 auto}
  .site-header .yg-brand img{width:146px;max-height:52px}
  .yg-mobile-toggle{margin-left:auto;padding:6px 0 6px 10px;font-size:31px;line-height:1}
  .yg-mobile-panel.open{padding:92px 24px 28px}
  .yg-hero{min-height:100svh;max-height:100svh}
  .yg-hero-content{padding:104px 0 42px;width:100%}
  .yg-hero-logo{width:min(82vw,390px);margin-bottom:22px}
  .yg-hero-actions{gap:10px;max-width:330px}
  .yg-hero-actions .yg-btn{min-height:50px}
  .yg-brand-statement{padding:48px 0 30px}
  .yg-brand-statement .words{font-size:clamp(52px,15vw,76px);line-height:.9;letter-spacing:.025em}
  .yg-brand-statement p{margin-top:20px;font-size:17px;line-height:1.55}
  .yg-section{padding:52px 0}
  .yg-section .yg-subtitle{font-size:22px;line-height:1.35}
  .yg-intro-media{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;overflow:hidden}
  .yg-intro-media img,.yg-intro-media img:first-child{display:block;width:100%;height:auto;max-height:none;aspect-ratio:4/5;object-fit:cover;border-radius:20px}
  .yg-gallery{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:none;gap:14px;overflow:hidden}
  .yg-gallery img,.yg-gallery img:first-child{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;grid-column:auto;grid-row:auto;border-radius:20px}
  .yg-classes-strip,.yg-session-list{width:100%;max-width:100%;grid-auto-columns:min(84vw,360px);overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
}

@media(max-width:480px){
  .site-header .yg-brand img{width:132px}
  .yg-hero-actions{width:100%}
  .yg-hero-actions .yg-btn{width:100%;justify-content:center}
  .yg-title{font-size:44px}
}


/* YOGAR mobile hotfix v1.0.2 — cache-safe + strict mobile layout */
@media (max-width:700px){
  .site-header .inner{display:flex!important;direction:ltr!important;justify-content:space-between!important;align-items:center!important;width:100%}
  .site-header .yg-brand{order:1!important;margin:0!important;flex:0 0 auto!important}
  .site-header .yg-mobile-toggle{order:2!important;margin:0!important;margin-left:auto!important;display:block!important}
  .site-header .yg-nav,.site-header>.inner>.yg-btn{display:none!important}
  .site-header .yg-brand img{width:154px!important;height:auto!important;max-height:56px!important}

  /* Do not use a horizontal carousel for classes on phones. */
  .yg-classes-strip{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;width:100%!important;max-width:100%!important;overflow:visible!important;gap:16px!important;padding:0!important}
  .yg-classes-strip>*{width:100%!important;max-width:100%!important;min-width:0!important;scroll-snap-align:none!important}
  .yg-class-card{width:100%!important;max-width:100%!important;margin:0!important}
  .yg-class-card img{width:100%!important;aspect-ratio:4/3!important;object-fit:cover!important}
  .yg-class-card .yg-card-body{padding:18px!important}

  /* Sessions may scroll, but must never widen the page. */
  .yg-session-list{display:flex!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;gap:12px!important;padding:0 0 8px!important;scroll-snap-type:x mandatory!important}
  .yg-session-list>*{flex:0 0 min(84vw,360px)!important;max-width:min(84vw,360px)!important;min-width:0!important;scroll-snap-align:start!important}

  .yg-container,.yg-section,.yg-intro-media,.yg-gallery,.yg-book-band{min-width:0!important}
  .yg-container{overflow:visible!important}
  .yg-gallery,.yg-intro-media{overflow:hidden!important}
}

/* YOGAR mobile refinement v1.0.3 */
.yg-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:30px}
.yg-brand-statement .words{display:flex;flex-direction:column;align-items:center;direction:ltr!important;unicode-bidi:isolate!important}
.yg-brand-statement .words span{display:block;position:relative;width:max-content}
.yg-brand-statement .words span::after{content:".";display:inline}
.yg-class-card-media{display:block}
.yg-class-card .yg-card-body{min-height:92px}
.yg-footer-mobile-brand{display:none}

@media(max-width:700px){
  /* Header: larger readable brand, tighter overall bar. */
  .site-header{padding:10px 0!important}
  .site-header .inner{min-height:58px!important}
  .site-header .yg-brand img{width:196px!important;max-height:70px!important}
  .site-header .yg-mobile-toggle{font-size:34px!important;padding:4px!important}

  /* Brand statement: punctuation is generated after each word, independent of RTL. */
  .yg-brand-statement{padding:42px 0 30px!important}
  .yg-brand-statement .words{font-size:clamp(52px,14vw,72px)!important;line-height:.98!important;letter-spacing:.02em!important}
  .yg-brand-statement p{max-width:92%;margin:24px auto 0!important}

  /* Homepage class cards: exact categories, compact captions, no dead space. */
  .yg-home-classes .yg-section-head{align-items:flex-end;margin-bottom:20px}
  .yg-home-classes .yg-section-head>a{font-size:15px;white-space:nowrap}
  .yg-class-card .yg-card-body{min-height:0!important;padding:18px 20px!important;align-items:center!important}
  .yg-class-card h3{margin:0!important;font-size:28px!important;line-height:1.1!important}
  .yg-class-card .arrow{font-size:30px!important;line-height:1!important}
  .yg-class-card img{aspect-ratio:4/3!important}

  /* Compact mobile footer designed separately from desktop. */
  .yg-footer{padding:34px 0 18px!important;direction:ltr!important;text-align:left!important}
  .yg-footer-mobile-brand{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:28px}
  .yg-footer-mobile-brand .yg-footer-logo{width:190px!important}
  .yg-footer-mobile-brand p{margin:8px 0 0;font-size:12px;letter-spacing:.12em}
  .yg-footer-brand-desktop{display:none!important}
  .yg-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px 28px!important}
  .yg-footer-grid>div:first-child{grid-column:auto!important}
  .yg-footer h4{font-size:11px!important;margin-bottom:8px!important}
  .yg-footer li{margin:5px 0!important;font-size:15px!important}
  .yg-footer-bottom{margin-top:28px!important;padding-top:16px!important;display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;gap:7px!important;direction:ltr!important;unicode-bidi:isolate!important;font-size:11px!important}
}

@media(max-width:420px){
  .site-header .yg-brand img{width:184px!important}
  .yg-footer-mobile-brand .yg-footer-logo{width:178px!important}
}

/* YOGAR mobile refinement v1.0.4 */
/* Brand statement intentionally has no punctuation. */
.yg-brand-statement .words span::after{content:none!important;display:none!important}

@media(max-width:700px){
  /* Make the real YOGAR wordmark visibly larger without making the header taller. */
  .site-header{padding:8px 0!important}
  .site-header .inner{min-height:60px!important}
  .site-header .yg-brand img{width:238px!important;max-width:55vw!important;max-height:76px!important}

  /* Keep both hero actions; make WATCH INTRO a centered secondary action. */
  .yg-hero-actions{width:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:12px!important}
  .yg-hero-actions .yg-btn:first-child{width:100%!important}
  .yg-hero-actions .yg-btn:nth-child(2){width:78%!important;margin-inline:auto!important;text-align:center!important;justify-content:center!important}
}

@media(max-width:420px){
  .site-header .yg-brand img{width:224px!important;max-width:58vw!important}
}

/* YOGAR mobile refinement v1.0.5 */
@media(max-width:700px){
  /* Header wordmark: true viewport center, black artwork. */
  .site-header .inner{position:relative!important;justify-content:flex-end!important}
  .site-header .yg-brand{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;margin:0!important;z-index:2!important}
  .site-header .logo-light{display:none!important}
  .site-header .logo-dark{display:block!important;filter:none!important}
  .site-header .yg-brand img{width:250px!important;max-width:58vw!important;max-height:78px!important;object-position:center!important}
  .site-header .yg-mobile-toggle{position:relative!important;z-index:3!important;margin-left:auto!important}

  /* Hero wordmark stays visible and becomes black. */
  .yg-hero-logo{filter:brightness(0)!important}

  /* True viewport-centered CTA stack. */
  .yg-hero-actions{position:relative!important;left:50%!important;transform:translateX(-50%)!important;width:calc(100vw - 60px)!important;max-width:625px!important;margin-inline:0!important;align-items:center!important}
  .yg-hero-actions .yg-btn:first-child{width:100%!important;justify-content:center!important;text-align:center!important}
  .yg-hero-actions .yg-btn:nth-child(2){width:78%!important;margin:0 auto!important;justify-content:center!important;text-align:center!important}
}
@media(max-width:420px){
  .site-header .yg-brand img{width:236px!important;max-width:60vw!important}
  .yg-hero-actions{width:calc(100vw - 48px)!important}
}
