/*
Theme Name: Luxembourg Yoga
Description: An accessible editorial theme for an independent Luxembourg yoga resource.
Version: 1.0.1
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: luxembourg-yoga-notes
License: GPL-2.0-or-later
*/
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url("assets/serif-400.woff2") format("woff2")}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url("assets/serif-600.woff2") format("woff2")}
@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url("assets/sans-400.woff2") format("woff2")}
@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url("assets/sans-600.woff2") format("woff2")}
:root{--paper:#fff;--ink:#21372d;--muted:#526159;--forest:#294d3d;--forest-hover:#183b2d;--pale:#edf2ed;--gravel:#d7ddd4;--link:#2b5942;--sans:Manrope,"Segoe UI",sans-serif;--serif:"Source Serif 4",Georgia,serif;--measure:70ch}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:var(--link);text-decoration-thickness:1px;text-underline-offset:.22em}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #9b552a;outline-offset:5px;border-radius:2px}::selection{background:#cbdcc9;color:#173425}input,textarea{caret-color:var(--forest)}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;text-wrap:balance;color:var(--ink)}h1{font-size:clamp(2.65rem,5.3vw,4.8rem);letter-spacing:-.025em;max-width:15ch;margin:0 0 1.5rem}h2{font-size:clamp(2rem,3.3vw,3rem);letter-spacing:-.02em;margin:2.75rem 0 1rem}h3{font-size:clamp(1.5rem,2.2vw,2rem);margin:2rem 0 .85rem}p{margin:0 0 1.25rem}ul,ol{padding-left:1.25rem;margin:1rem 0 1.5rem}li{padding-left:.35rem;margin:.65rem 0}strong{font-weight:600}figure{margin:0}figcaption{font-size:.8rem;line-height:1.5;color:var(--muted);margin-top:.65rem}button,.button,input,textarea{font:inherit}button{cursor:pointer}
.skip-link{position:absolute;left:1rem;top:-100px;padding:.65rem 1rem;background:var(--forest);color:white;z-index:20}.skip-link:focus{top:1rem}.site-header{max-width:1280px;margin:0 auto;padding:1.6rem 2.5rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;border-bottom:1px solid var(--gravel)}.brand{display:flex;flex-direction:column;gap:.15rem;text-decoration:none;flex-shrink:0}.brand-name{font-family:var(--serif);font-size:1.55rem;line-height:1.25;letter-spacing:-.02em;color:var(--ink)}.brand-context{font-size:.7rem;letter-spacing:.02em;color:var(--muted);line-height:1.5}.primary-nav ul{list-style:none;display:flex;align-items:center;gap:1.6rem;padding:0;margin:0}.primary-nav li{padding:0;margin:0}.primary-nav a{font-size:.85rem;font-weight:600;text-decoration:none;display:inline-block;padding:.4rem 0;white-space:nowrap}.primary-nav a:hover,.primary-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:.5em;text-decoration-thickness:2px}
.page-shell{max-width:1180px;margin:0 auto;padding:0 2.5rem}.hero{padding:4rem 0 2.25rem}.hero h1{margin:0 0 1.5rem;max-width:14ch}.hero p{max-width:58ch;font-size:1.12rem}.hero-grid{display:grid;grid-template-columns:1fr 1.06fr;gap:3rem;align-items:center}.hero-copy{padding:1rem 0}.hero-media img{width:100%;aspect-ratio:1.15;object-fit:cover;object-position:67% center;border-radius:2px}.hero-media figcaption{max-width:48ch}.hero .wp-block-buttons,.hero .guide-link{margin-top:1.8rem}.wp-block-button__link,.button{background:var(--forest);color:white;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.25rem;border:0;border-radius:4px;font-size:.88rem;font-weight:600;text-decoration:none;transition:background .18s ease}.wp-block-button__link:hover,.button:hover{background:var(--forest-hover);color:white;text-decoration:none}.wp-block-buttons{display:flex;gap:1rem;flex-wrap:wrap}.wp-block-button{margin:0}
.disclosure{border-top:1px solid var(--gravel);border-bottom:1px solid var(--gravel);padding:1.1rem 0;margin:0 0 3rem;color:var(--muted);font-size:.86rem;line-height:1.7}.disclosure p{margin:0;max-width:var(--measure)}.prose{max-width:var(--measure);margin:0 auto;padding:3.5rem 0}.prose h1{max-width:18ch;margin:0 0 1.5rem}.prose .lead,.intro{font-size:1.12rem;line-height:1.8;color:var(--muted)}.prose .source-entry{margin:0}.prose .disclosure{margin:1.75rem 0 2.75rem}.section{padding:2.75rem 0;border-top:1px solid var(--gravel)}.section p{max-width:var(--measure)}.section h2{margin-top:0}.subjects{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;padding:1.5rem 0 3.5rem}.subjects h2{margin-top:.5rem}.subjects p{max-width:43ch}.subjects>div+div{padding-left:3rem;border-left:1px solid var(--gravel)}.topic-link{font-weight:600;font-size:.92rem}.source-entry{padding:1.5rem 0;border-bottom:1px solid var(--gravel)}.source-entry h2,.source-entry h3{margin:0 0 .65rem}.source-entry p{margin:0 0 .7rem}.source-date{font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums}.source-entry .source-date{margin:0 0 .5rem}.next-step{margin:2.75rem 0 3.5rem;padding:2.5rem;background:var(--forest);color:#fff;border-radius:4px}.next-step h2,.next-step h3{color:#fff;margin:0 0 1rem}.next-step p{max-width:60ch;color:#f0f5ef}.next-step a{color:white}.next-step p:last-child{margin-bottom:0}.wp-block-quote{margin:2rem 0;padding:0;font-size:1.1rem;color:var(--muted)}.wp-block-columns{display:flex;gap:3rem}.wp-block-column{flex:1;min-width:0}.wp-block-separator{border:0;border-top:1px solid var(--gravel);margin:2.5rem 0}.wp-block-image{margin:2rem 0}.error-page{min-height:55vh;padding:4rem 0}.error-page h1{margin-bottom:1.5rem}.site-footer{background:var(--pale);margin-top:1rem;padding:2.5rem max(2.5rem,calc((100vw - 1100px)/2));color:var(--muted);font-size:.82rem;line-height:1.75}.site-footer p{max-width:80ch}.site-footer .footer-top{display:flex;justify-content:space-between;gap:2rem;margin-bottom:1.5rem}.site-footer .footer-brand{font-family:var(--serif);font-size:1.4rem;color:var(--ink)}.site-footer nav ul{display:flex;gap:1.5rem;list-style:none;padding:0;margin:0}.site-footer nav li{padding:0;margin:0}.site-footer .copyright{font-size:.72rem;margin-bottom:0}
@media(max-width:950px){.site-header{padding:1.3rem 2rem;align-items:flex-start;flex-direction:column;gap:.75rem}.primary-nav ul{gap:1.5rem;flex-wrap:wrap}.page-shell{padding:0 2rem}.hero-grid{gap:2rem}.hero{padding-top:3rem}.hero h1{font-size:3.3rem}.hero p{font-size:1rem}.subjects{gap:2rem}.subjects>div+div{padding-left:2rem}}
@media(max-width:620px){body{font-size:16px;line-height:1.75}.site-header{padding:1.2rem 1.25rem}.brand-name{font-size:1.5rem}.brand-context{font-size:.67rem}.primary-nav ul{column-gap:1.3rem;row-gap:.1rem}.primary-nav a{font-size:.77rem;padding:.5rem 0}.page-shell{padding:0 1.25rem}.hero{padding:2.3rem 0 1.6rem}.hero-grid{display:flex;flex-direction:column;gap:1.2rem}.hero-copy{padding:0;width:100%}.hero h1{font-size:2.75rem;max-width:14ch;line-height:1.1;margin-bottom:1.2rem}.hero-media{width:100%}.hero-media img{aspect-ratio:1.5;object-position:62% center}.hero p{font-size:1.04rem}.hero .guide-link{margin-top:1.3rem}.disclosure{margin-bottom:2rem;font-size:.82rem}.subjects{display:block;padding:0 0 1.5rem}.subjects>div{padding:1.3rem 0}.subjects>div+div{padding:1.75rem 0 0;border-left:0;border-top:1px solid var(--gravel)}.subjects h2{font-size:2.1rem}.prose{padding:2.25rem 0}.prose h1{font-size:2.6rem}.prose h2{font-size:2rem;margin-top:2.3rem}.prose h3{font-size:1.6rem}.next-step{padding:1.6rem;margin:2rem 0 2.5rem}.next-step h2{font-size:2rem}.wp-block-columns{display:block}.wp-block-column+ .wp-block-column{margin-top:1.5rem}.site-footer{padding:2rem 1.25rem}.site-footer .footer-top{flex-direction:column;gap:.75rem}.site-footer nav ul{gap:1rem;flex-wrap:wrap}.section{padding:2rem 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* WordPress wraps Group block children; keep the authored grid and flex layouts. */
.hero-grid>.wp-block-group__inner-container,.subjects>.wp-block-group__inner-container{display:contents}
.subjects>.wp-block-group__inner-container>div+div{padding-left:3rem;border-left:1px solid var(--gravel)}
@media(max-width:950px){.subjects>.wp-block-group__inner-container>div+div{padding-left:2rem}}
@media(max-width:620px){.subjects>.wp-block-group__inner-container>div{padding:1.3rem 0}.subjects>.wp-block-group__inner-container>div+div{padding:1.75rem 0 0;border-left:0;border-top:1px solid var(--gravel)}}


