/*!
 * PRANA — base elements, header, mobile navigation, footer
 * Part of the PRANA child theme. Values are taken from the approved website design.
 * Do not edit design tokens here for one-off changes: use Elementor Global Styles,
 * or add a page-level override in 06-overrides.css.
 */

/* ============ SITE SHELL ============ */
body.prana{background:var(--cream-warm);color:var(--ink);font-size:15px;line-height:1.62;font-weight:330}
body.prana.prana .wrap{width:100%;max-width:1240px;margin-inline:auto;padding-inline:var(--pad)}
body.prana.prana a{color:inherit;text-decoration:none}
body.prana.prana :focus-visible{outline:2px solid var(--gold-lit);outline-offset:3px}

/* --- header --- */
:root{--hdr-h:70px}
body.prana.prana .hdr{position:sticky;top:0;z-index:600;background:rgba(251,248,242,.94);
 backdrop-filter:saturate(1.2) blur(14px);border-bottom:1px solid transparent;transition:border-color .3s}
body.prana.prana .hdr.scrolled{border-bottom-color:var(--line)}
body.prana.prana .hdr.on-dark{background:transparent;backdrop-filter:none}
body.prana.prana .hdr-in{display:flex;align-items:center;gap:20px;min-height:70px;padding-block:12px}
body.prana.prana .logo{display:flex;align-items:center;flex:0 0 auto}
body.prana.prana .logo img{height:42px;width:auto}
body.prana.prana .hdr.on-dark .logo img{filter:brightness(0) invert(1) opacity(.94)}
body.prana.prana .nav{display:none;margin-left:auto;align-items:center;gap:clamp(14px,2.2vw,30px)}
body.prana.prana .nav a,body.prana.prana .nav button{font-family:var(--body);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
 font-weight:400;color:var(--ink-soft);background:none;border:0;padding:8px 0;cursor:pointer;
 position:relative;transition:color .25s}
body.prana.prana .nav a:hover,body.prana.prana .nav button:hover{color:var(--ink)}
body.prana.prana .hdr.on-dark .nav a,body.prana.prana .hdr.on-dark .nav button{color:var(--on-dark-soft)}
body.prana.prana .hdr.on-dark .nav a:hover,body.prana.prana .hdr.on-dark .nav button:hover{color:#fff}
body.prana.prana .nav a[aria-current="page"]{color:var(--ink)}
body.prana.prana .nav a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--gold-lit)}
body.prana.prana .nav-cta{border:1px solid var(--gold)!important;padding:9px 17px!important;color:var(--gold)!important;
 letter-spacing:.16em;transition:background .3s,color .3s}
body.prana.prana .nav-cta:hover{background:var(--gold);color:var(--paper)!important}
body.prana.prana .hdr.on-dark .nav-cta{border-color:var(--gold-pale)!important;color:var(--gold-pale)!important}
body.prana.prana .hdr.on-dark .nav-cta:hover{background:var(--gold-pale);color:var(--green)!important}
body.prana.prana .dd{position:relative}
body.prana.prana .dd-p{display:flex;align-items:center;gap:6px}
body.prana.prana .dd-p::after{content:"";width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;
 transform:rotate(45deg) translateY(-2px);transition:transform .3s}
body.prana.prana .dd[data-open="true"] .dd-p::after{transform:rotate(-135deg) translateY(-1px)}
body.prana.prana .dd-menu{position:absolute;top:calc(100% + 12px);left:-20px;min-width:280px;background:var(--paper);
 border:1px solid var(--line);padding:8px;opacity:0;visibility:hidden;transform:translateY(-6px);
 transition:.28s var(--ease);box-shadow:0 18px 44px rgba(13,51,41,.11)}
body.prana.prana .dd[data-open="true"] .dd-menu{opacity:1;visibility:visible;transform:none}
body.prana.prana .dd-menu a{display:block;padding:11px 14px;letter-spacing:.11em;color:var(--ink-soft)!important;
 border-bottom:1px solid var(--line)}
body.prana.prana .dd-menu a:last-child{border-bottom:0}
body.prana.prana .dd-menu a:hover{background:var(--cream);color:var(--ink)!important}
body.prana.prana .burger{display:flex;flex-direction:column;justify-content:center;gap:5px;margin-left:auto;
 width:44px;height:44px;align-items:flex-end;background:none;border:0;cursor:pointer;padding:0}
body.prana.prana .burger span{display:block;height:1px;background:var(--ink);transition:.3s var(--ease)}
body.prana.prana .burger span:nth-child(1){width:26px}body.prana.prana .burger span:nth-child(2){width:18px}
body.prana.prana .hdr.on-dark .burger span{background:var(--on-dark)}
body.prana.prana .burger[aria-expanded="true"] span:nth-child(1){transform:translateY(3px) rotate(45deg);width:24px}
body.prana.prana .burger[aria-expanded="true"] span:nth-child(2){transform:translateY(-3px) rotate(-45deg);width:24px}
body.prana.prana .mob{position:absolute;inset:0;z-index:590;min-height:100%;overflow-y:auto;background:var(--cream-warm);padding:96px var(--pad) 40px;
 display:flex;flex-direction:column;opacity:0;visibility:hidden;transition:.35s var(--ease)}
body.prana.prana .mob[data-open="true"]{opacity:1;visibility:visible}
body.prana.prana .mob a{font-family:var(--display);font-size:27px;line-height:1.3;padding:11px 0;border-bottom:1px solid var(--line);color:var(--ink)}
body.prana.prana .mob .sub{font-family:var(--body);font-size:12.5px;letter-spacing:.11em;text-transform:uppercase;
 color:var(--ink-soft);padding-left:20px}
body.prana.prana .mob .m-cta{margin-top:auto;text-align:center;border:1px solid var(--gold);font-family:var(--body);
 font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);padding:17px}

/* --- footer --- */
body.prana.prana .ftr{background:var(--green);color:var(--on-dark);padding:clamp(48px,7vw,84px) 0 34px;margin-top:0}
body.prana.prana .ftr-top{display:grid;gap:34px;padding-bottom:38px;border-bottom:1px solid var(--line-dark)}
body.prana.prana .ftr-brand img{height:26px;filter:brightness(0) invert(1) opacity(.92)}
body.prana.prana .ftr-tag{font-family:var(--display);font-size:23px;line-height:1.3;margin:16px 0 0;color:var(--on-dark)}
body.prana.prana .ftr-cols{display:grid;gap:28px}
body.prana.prana .ftr h4{font-size:9.5px;letter-spacing:.19em;text-transform:uppercase;color:var(--gold-pale);
 font-weight:500;margin:0 0 13px}
body.prana.prana .ftr li{list-style:none;margin-bottom:8px}
body.prana.prana .ftr ul{margin:0;padding:0}
body.prana.prana .ftr-cols a,body.prana.prana .ftr-cols span{font-size:13px;color:var(--on-dark-soft);transition:color .25s}
body.prana.prana .ftr-cols a:hover{color:var(--gold-pale)}
body.prana.prana .ftr-btm{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;padding-top:24px;
 font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:rgba(244,239,231,.46)}
