/* Shared front-end and Gutenberg design system. No CSS framework. */
:root{--lega-primary:var(--wp--preset--color--primary,#127d4b);--lega-dark:var(--wp--preset--color--dark,#093e26);--lega-accent:var(--wp--preset--color--accent,#fdc600);--lega-light:var(--wp--preset--color--light,#e7efea);--lega-text:var(--wp--preset--color--text,#252625);--lega-white:var(--wp--preset--color--white,#fff);--lega-wide:var(--wp--style--global--wide-size,1280px);--lega-radius:var(--wp--custom--radius,16px);--lega-gutter:clamp(1.25rem,4vw,4rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;background:var(--lega-white);color:var(--lega-text);line-height:1.6}img{max-width:100%;height:auto}svg{flex-shrink:0}figure{margin:0}a{color:var(--lega-primary);text-underline-offset:.2em}a:hover{color:var(--lega-dark)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}a,button{transition:background-color .15s,color .15s,box-shadow .15s}button,input,textarea,select{max-width:100%}:focus-visible{outline:3px solid var(--lega-primary);outline-offset:5px}:where(.has-dark-background-color,.site-footer) :focus-visible{outline-color:var(--lega-accent)}[tabindex="-1"]:focus{outline:0}
h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.08;letter-spacing:-.04em;color:var(--lega-dark);overflow-wrap:anywhere}h1{font-size:clamp(2.7rem,5.3vw,5rem)}h2{font-size:clamp(2.2rem,4.3vw,4rem)}h3{font-size:clamp(1.5rem,2.3vw,2rem)}p{overflow-wrap:break-word}h1 em,h2 em{font-style:normal;color:var(--lega-primary)}.site-container{width:min(calc(100% - var(--lega-gutter)*2),var(--lega-wide));margin-inline:auto}.content-container{width:min(calc(100% - var(--lega-gutter)*2),760px);margin-inline:auto}.site-main{min-height:50vh}.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}.skip-link:focus{clip:auto;width:auto;height:auto;left:1rem;top:1rem;background:var(--lega-accent);color:var(--lega-dark);padding:1rem 1.5rem;z-index:999999;white-space:normal}.eyebrow{font-size:.75rem!important;font-weight:700;letter-spacing:.13em;text-transform:uppercase;line-height:1.5}.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;background:var(--lega-accent);border:2px solid transparent;border-radius:100px;color:var(--lega-dark);font-size:1rem;font-weight:700;line-height:1.4;padding:.85rem 1.5rem;text-decoration:none}.button:hover,.wp-block-button__link:hover{background:var(--lega-dark);color:var(--lega-white)}.is-style-outline .wp-block-button__link{background:transparent;border-color:currentColor;color:var(--lega-dark)}
/* Header: independent logo, menu and CTA positions. */
.site-header{position:relative;z-index:50;background:var(--lega-white);border-bottom:1px solid var(--wp--custom--header-border,#ccded2)}
.site-header .site-container,.header-menu-row .site-container{width:min(100%,var(--lega-wide));padding-inline:clamp(1rem,4vw,2rem)}
@media(min-width:1280px){.site-header .site-container,.header-menu-row .site-container{padding-inline:0}}
.has-sticky-header .site-header{position:sticky;top:0}.admin-bar.has-sticky-header .site-header{top:32px}
.header-top{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1rem;min-height:0;padding-block:1rem}
.header-side{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;min-width:0}.header-side-left{grid-column:1}.header-side-right{grid-column:3;justify-content:flex-end;gap:.75rem}
.header-logo{display:flex;align-items:center;flex-shrink:0}.header-logo-center{grid-column:2;grid-row:1;justify-self:center}
.site-brand{display:inline-flex;flex-shrink:0}.site-logo{display:block;width:160px;height:64px;object-fit:contain}.site-header .site-logo{width:auto;height:64px}
.header-ctas{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;min-width:0}.header-ctas-right{justify-content:flex-end}
.header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.75rem 1.5rem;border:1px solid var(--lega-dark);border-radius:100px;font-size:1rem;font-weight:600;line-height:1.5;color:var(--lega-dark);text-decoration:none;overflow-wrap:anywhere;max-width:100%}
.header-cta--light{background:var(--lega-white)}.header-cta--dark{background:var(--wp--custom--cta-color,#76fa91);border-color:var(--wp--custom--cta-color,#76fa91)}
.header-cta:hover{background:var(--wp--custom--cta-hover,#71ee8a);border-color:var(--wp--custom--cta-hover,#71ee8a);color:var(--lega-dark);text-decoration:none}
.header-cta:focus-visible{outline:2px solid var(--lega-dark);outline-offset:2px;text-decoration:none}
.header-menu-row{background:var(--lega-white);display:flow-root}
.site-navigation{min-width:0;font-size:1.25rem;font-weight:400;line-height:1.4}
.site-navigation[hidden]{display:none!important}
.site-navigation ul{padding:0;margin:0;list-style:none}
.site-navigation>.menu,.site-navigation>div>.menu{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem clamp(1rem,2vw,2rem)}
.site-navigation li{position:relative}.site-navigation a{display:block;color:var(--lega-dark);padding:.85rem 0;text-decoration:none}
.site-navigation a:hover,.site-navigation a:focus,.site-navigation a:active,.site-navigation .current-menu-item>a,.site-navigation .current_page_item>a{color:var(--lega-primary);text-decoration:none}
.site-navigation .sub-menu,.site-navigation .children{display:none;position:absolute;inset:100% auto auto 0;min-width:230px;max-width:calc(100vw - 3rem);padding:.6rem 1rem;background:var(--lega-white);border:1px solid var(--lega-light);border-radius:8px;box-shadow:0 12px 30px #093e261a;z-index:2}
.site-navigation li:hover>ul,.site-navigation li:focus-within>ul{display:block}.site-navigation ul ul ul{left:100%;top:0}
.site-navigation .menu-item-has-children>a:after,.site-navigation .page_item_has_children>a:after{content:'⌄';margin-left:.4rem}
.header-side .site-navigation{flex-basis:100%}
.header-menu-row .site-navigation{margin-top:1rem;padding:0 0 .5rem}
.menu-toggle{display:none;align-items:center;justify-content:center;flex-shrink:0;width:50px;height:42px;border:1px solid transparent;background:transparent;color:var(--lega-dark);padding:0}
.header-search{position:relative;flex-shrink:0;color:var(--lega-dark)}
.header-search summary{list-style:none;display:flex;align-items:center;justify-content:center;width:50px;height:42px;border:1px solid transparent;cursor:pointer;border-radius:50%;background:transparent}
.header-search summary::-webkit-details-marker{display:none}.header-search summary:hover{color:var(--lega-primary)}
.search-popover{position:absolute;right:0;top:calc(100% + .6rem);width:min(340px,calc(100vw - 2.5rem));padding:1rem;border:1px solid var(--lega-light);border-radius:var(--lega-radius);background:var(--lega-white);box-shadow:0 12px 30px #093e261a;z-index:3}
.search-form{display:flex;align-items:center;gap:.25rem;border:1px solid var(--lega-primary);border-radius:100px;padding:.2rem .35rem .2rem .5rem;max-width:440px}
.search-form input{appearance:none;min-width:0;width:100%;background:transparent;color:var(--lega-text);border:0;border-radius:100px;padding:.6rem .75rem;font-size:1rem}
.search-form button{flex-shrink:0;width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--lega-dark)}
.search-form:focus-within{border-color:var(--lega-primary);box-shadow:0 0 0 1px var(--lega-primary)}
.search-form input:focus,.search-form input:focus-visible{outline:none;box-shadow:none}
.search-form button:hover,.search-form button:focus,.search-form button:active{background:transparent;color:var(--lega-primary);box-shadow:none}
.search-form button:focus-visible{outline:2px solid var(--lega-primary);outline-offset:0}
@media(min-width:1100px){
 .has-nav-js .menu-below .menu-toggle{display:flex}
 /* Shared link styling for all three menu positions. Only the lower row is nowrap. */
 .site-navigation{font-size:1.125rem;font-weight:500;line-height:1.5}
 .site-navigation>.menu,.site-navigation>div>.menu{align-items:stretch;gap:1rem}
 .site-navigation>.menu>li,.site-navigation>div>.menu>li{flex-shrink:0}
 .site-navigation>.menu>li>a,.site-navigation>div>.menu>li>a{display:inline-block;white-space:nowrap;padding:.75rem .5rem 1rem;margin:0;border:0;box-shadow:none;color:var(--lega-dark);text-decoration:none}
 .site-navigation>.menu>li>a:hover,.site-navigation>div>.menu>li>a:hover{color:var(--wp--custom--menu-hover,#106c41)}
 .site-navigation>.menu>li>a:focus-visible,.site-navigation>div>.menu>li>a:focus-visible{color:var(--lega-dark);outline:2px solid var(--lega-dark);outline-offset:-2px;border-radius:2px}
 .header-menu-row .site-navigation>.menu,.header-menu-row .site-navigation>div>.menu{flex-wrap:nowrap}
 /* A decorative separator occupies the same 2px plus extra 16px gap as the source list item. */
 .header-menu-row .site-navigation>.menu>li:nth-child(4),.header-menu-row .site-navigation>div>.menu>li:nth-child(4){margin-left:18px}
 .header-menu-row .site-navigation>.menu>li:nth-child(4):before,.header-menu-row .site-navigation>div>.menu>li:nth-child(4):before{content:'';position:absolute;left:-18px;top:12px;height:50%;width:2px;background:#949594}
 .site-navigation li:last-child .sub-menu{left:auto;right:0}.site-navigation .menu>li:last-child .sub-menu .sub-menu{right:100%}
}
@media(max-width:1099px){
 .header-top{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:'toggle brand search' 'ctaleft ctaleft ctaleft' 'ctaright ctaright ctaright' 'nav nav nav';column-gap:.5rem;row-gap:0;min-height:90px;padding-block:.75rem}
 .header-side{display:contents}.header-logo,.header-logo-center{grid-area:brand;justify-self:center}.site-header .site-logo{width:auto;height:64px}
 .logo-left .header-top{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:'brand toggle search' 'ctaleft ctaleft ctaleft' 'ctaright ctaright ctaright' 'nav nav nav'}.logo-left .header-logo{justify-self:start}
 .logo-right .header-top{grid-template-columns:auto auto minmax(0,1fr);grid-template-areas:'toggle search brand' 'ctaleft ctaleft ctaleft' 'ctaright ctaright ctaright' 'nav nav nav'}.logo-right .header-logo{justify-self:end}
 .has-nav-js .menu-toggle{display:flex;grid-area:toggle;justify-self:start}
 .header-search{grid-area:search;justify-self:end}.logo-right .header-search{position:static}.logo-right .search-popover{right:var(--lega-gutter);top:80px}
 .header-ctas{margin-top:.75rem;gap:.5rem}.header-ctas-left{grid-area:ctaleft;justify-content:flex-start}.header-ctas-right{grid-area:ctaright;justify-content:flex-end}.header-cta{font-size:1rem;min-height:44px;padding:.55rem 1.1rem}
 .site-navigation{grid-area:nav;width:100%;font-size:1.1rem}.header-side .site-navigation{font-size:1.1rem}
 .site-navigation>.menu,.site-navigation>div>.menu{display:block}.site-navigation a{padding:.6rem 0}
 .site-navigation .sub-menu,.site-navigation .children{position:static;display:block;box-shadow:none;border:0;border-radius:0;min-width:0;max-width:100%;padding:0 0 0 1rem}
 .header-menu-row .site-navigation{padding-block:.75rem}
}

/* Homepage patterns. */
.homepage{overflow:clip}.homepage>.alignfull{margin-block:0}.lega-section{padding:clamp(3.5rem,7vw,7rem) var(--lega-gutter)}.lega-section>*,.lega-hero>*{max-width:var(--lega-wide)!important;margin-inline:auto!important}.lega-section h2{margin-top:0;margin-bottom:2.5rem}.lega-section .wp-block-columns{gap:clamp(1.5rem,4vw,4rem);margin-block:0}.lega-section .wp-block-column{min-width:0}.lega-section .wp-block-column>:first-child{margin-top:0}.lega-section .wp-block-column>:last-child{margin-bottom:0}.lega-hero{position:relative;isolation:isolate;padding:5rem var(--lega-gutter);min-height:650px;display:grid;align-items:center;overflow:hidden;background:var(--lega-dark)}.lega-hero>.wp-block-columns{width:100%;align-items:center;gap:2rem}.lega-hero .wp-block-column:first-child{position:relative;z-index:2}.lega-hero h1{max-width:780px;font-size:clamp(3rem,6vw,5.9rem);letter-spacing:-.055em;color:var(--lega-white);margin:.8rem 0 1.5rem}.lega-hero h1 em{color:var(--lega-accent)}.lega-hero p{max-width:480px;color:var(--lega-white);font-size:1.125rem}.lega-hero .eyebrow{color:var(--lega-accent)}.lega-hero .wp-block-buttons{margin-top:2rem}.lega-hero .wp-block-button__link:hover{background:var(--lega-white);color:var(--lega-dark)}.lega-hero .wp-block-image{margin:0;position:relative}.lega-hero .wp-block-image img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:50% 50% var(--lega-radius) var(--lega-radius)}.lega-mission h2{text-align:center;margin-bottom:3.5rem}.lega-feature-card{border-radius:var(--lega-radius);overflow:hidden;height:100%}.lega-feature-card>.wp-block-image{margin:0}.lega-feature-card>.wp-block-image img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.lega-feature-copy{padding:clamp(1.5rem,3vw,2.75rem)}.lega-feature-copy h3{font-size:clamp(1.75rem,3vw,2.8rem);margin-block:.75rem 1rem}.lega-feature-copy .wp-block-buttons{margin-top:1.5rem}.lega-promo{padding:1.5rem 0;border-bottom:1px solid var(--lega-light);margin-block:0!important}.lega-promo:first-child{padding-top:0}.lega-promo:last-child{border-bottom:0;padding-bottom:0}.lega-promo .eyebrow{color:var(--lega-primary)}.lega-promo h3{margin-block:.5rem .75rem}.lega-promo p:last-child{font-size:1rem;margin-bottom:0}.lega-topics-section{position:relative;overflow:hidden}.lega-topics-section h2{color:var(--lega-white);max-width:var(--lega-wide)}.lega-topics-section h2 em{color:var(--lega-accent)}.lega-topics{display:flex;flex-wrap:wrap;gap:.75rem}.lega-topics>.lega-topic{max-width:none;margin:0!important;border:1px solid #ffffff60;border-radius:100px;color:var(--lega-white);padding:.65rem 1.3rem;font-size:clamp(1rem,1.9vw,1.4rem)}.lega-news-section .eyebrow{color:var(--lega-primary)}.lega-news .wp-block-post-template{gap:2rem;list-style:none;padding:0}.lega-news .wp-block-post{padding:0 0 1.5rem;border-bottom:1px solid var(--lega-light)}.lega-news .wp-block-post-featured-image{margin:0 0 1.25rem}.lega-news .wp-block-post-featured-image img{border-radius:var(--lega-radius);width:100%;object-fit:cover;aspect-ratio:3/2}.lega-news .wp-block-post-title{font-size:1.55rem;line-height:1.22;margin-block:.75rem}.lega-news .wp-block-post-title a{color:var(--lega-dark);text-decoration:none}.lega-news .wp-block-post-title a:hover{text-decoration:underline}.lega-news .wp-block-post-terms,.lega-news .wp-block-post-date{font-size:.8rem}.lega-news .wp-block-post-excerpt{font-size:1rem}.lega-empty-state{border:1px dashed var(--lega-primary);border-radius:var(--lega-radius);padding:2.5rem;text-align:center;color:var(--lega-primary)}.lega-actions h2{text-align:center}.lega-action-card{padding:2rem;border-radius:var(--lega-radius);height:100%}.lega-card-number{font-size:2.75rem;line-height:1;color:var(--lega-primary);letter-spacing:-.06em;margin-bottom:3rem}.lega-action-card h3{margin-bottom:.75rem}.lega-action-card p:last-child{font-size:1rem}.lega-impact .wp-block-columns{align-items:center}.lega-impact h2{margin-bottom:0}.lega-impact .wp-block-column:last-child{border-left:2px solid var(--lega-accent);padding-left:2rem}.lega-volunteer .wp-block-columns{align-items:center}.lega-volunteer .wp-block-image img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--lega-radius)}.lega-volunteer h3{font-size:clamp(1.8rem,3.5vw,3rem)}.lega-volunteer .wp-block-buttons{margin-top:2rem}.lega-join .wp-block-columns{align-items:center}.lega-join h2{margin-bottom:0}.lega-join h2 em{color:var(--lega-dark)}.lega-join .wp-block-button__link{background:var(--lega-dark);color:var(--lega-white)}.lega-join .wp-block-button__link:hover{background:var(--lega-white);color:var(--lega-dark)}
/* Gutenberg content and standard WordPress templates. */
.page-main{padding-top:clamp(1.5rem,3vw,2.5rem);padding-bottom:clamp(3rem,7vw,6rem)}.entry-header{margin-bottom:3rem}.entry-header h1{margin-block:1rem}.entry-content>*{max-width:760px;margin-inline:auto}.entry-content>:not(.alignfull){width:calc(100% - var(--lega-gutter)*2)}.entry-content>.alignwide{max-width:var(--lega-wide)}.entry-content>.alignfull{max-width:none;width:100%}.entry-content .alignleft{float:left;margin-right:1.5rem}.entry-content .alignright{float:right;margin-left:1.5rem}.entry-content:after{content:'';display:table;clear:both}.entry-content .wp-block-group>*{max-width:100%}.entry-content h2{font-size:clamp(1.9rem,3.5vw,3rem);margin-top:3rem}.entry-content h3{font-size:1.6rem}.entry-content p{margin-block:1.5rem}.entry-content iframe{max-width:100%}.entry-content pre{overflow:auto;padding:1.5rem;background:var(--lega-light);border-radius:var(--lega-radius)}.entry-content table{width:100%;border-collapse:collapse}.entry-content th,.entry-content td{padding:.75rem;border:1px solid var(--lega-light)}.entry-content blockquote{border-left:4px solid var(--lega-primary);padding-left:1.5rem;font-size:1.4rem}.entry-content .wp-block-image img{height:auto}.breadcrumbs{font-size:.875rem;margin-bottom:1.5rem}.entry-meta{font-size:.875rem}.featured-image{margin-bottom:3rem}.featured-image img{display:block;width:100%;max-height:600px;object-fit:cover;border-radius:var(--lega-radius)}.archive-header{margin-bottom:3rem}.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.news-card{border-bottom:1px solid var(--lega-light);padding-bottom:1.5rem}.card-image img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--lega-radius)}.news-card h2{font-size:1.75rem}.news-card h2 a{text-decoration:none;color:var(--lega-dark)}.news-card h2 a:hover{text-decoration:underline}.news-card time,.card-copy>p{font-size:.9rem}.navigation{margin-block:3rem}.nav-links{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.page-numbers{padding:.6rem 1rem;border:1px solid var(--lega-light);border-radius:6px;text-decoration:none}.page-numbers.current{background:var(--lega-dark);color:var(--lega-white)}.comments-area{margin-top:4rem}.comment-list{padding:0;list-style:none}.comment-body{padding-block:1.5rem;border-top:1px solid var(--lega-light)}.comment-form input:not([type=checkbox]):not([type=submit]),.comment-form textarea,.post-password-form input[type=password]{display:block;border:1px solid var(--lega-primary);border-radius:6px;padding:.75rem;width:100%}.comment-form label{display:block}.comment-form-cookies-consent label{display:inline}.comment-form .submit,.post-password-form input[type=submit]{border:0;border-radius:100px;background:var(--lega-dark);color:var(--lega-white);padding:.85rem 1.5rem}.bypostauthor .comment-author{font-weight:700}.wp-caption-text,.gallery-caption{font-size:.875rem}.sticky{border-top:3px solid var(--lega-primary)}
/* Footer. */
.site-footer{background:var(--lega-dark);color:var(--lega-white);font-size:1rem;line-height:1.5}.site-footer a{color:var(--lega-white);text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-main{display:flex;justify-content:space-between;gap:3rem;padding-block:4.5rem}.footer-brand{max-width:330px}.site-footer .site-brand{background:var(--lega-white);padding:.5rem .75rem;border-radius:8px}.footer-brand address{font-style:normal;font-size:.875rem;margin-top:1.25rem}.footer-contact{display:flex;flex-direction:column;gap:.75rem;max-width:300px}.social-links{display:flex;gap:.6rem 1.2rem;flex-wrap:wrap;font-size:.875rem}.footer-nav ul{list-style:none;padding:0;margin:0}.footer-nav>.menu,.footer-nav>div>.menu{display:flex;flex-wrap:wrap;gap:2rem}.footer-nav>.menu>li>a{font-weight:700}.footer-nav li li{margin-top:.5rem}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid rgb(0 0 0 / 20%);padding-block:1.5rem}.footer-bottom ul{display:flex;flex-wrap:wrap;gap:1.25rem;list-style:none;padding:0;margin:0;font-size:.8rem}
/* Coming Soon is an isolated, page-only template. */
.coming-soon{min-height:100vh;display:flex;flex-direction:column;background:var(--lega-light)}.coming-header{padding-block:2rem}.coming-main{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:clamp(2rem,6vw,6rem);padding-block:3rem 5rem;flex:1}.coming-copy h1{font-size:clamp(3rem,6vw,6rem);margin-block:1.25rem 2rem}.coming-description{font-size:1.25rem}.coming-copy .eyebrow,.coming-soon a:not(.button){color:var(--lega-dark)}.coming-copy .entry-content>*{width:100%;max-width:100%}.coming-copy .button{margin-top:1rem}.coming-visual img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:50% 50% var(--lega-radius) var(--lega-radius)}.coming-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1.25rem;border-top:1px solid var(--lega-primary);padding-block:1.5rem;font-size:.875rem}
@media(max-width:1099px){.lega-hero{min-height:540px;padding-block:3rem}.footer-main{flex-wrap:wrap}.footer-nav{flex:1}.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:781px){.admin-bar.has-sticky-header .site-header{top:46px}.lega-hero{padding-block:2.5rem}.lega-hero>.wp-block-columns{margin-bottom:0}.lega-hero .wp-block-column:last-child{flex-basis:100%!important}.lega-hero .wp-block-image img{aspect-ratio:16/9;max-height:320px;border-radius:var(--lega-radius)}.lega-section h2{margin-bottom:2rem}.lega-section .wp-block-columns{gap:2rem}.lega-mission h2,.lega-actions h2{text-align:left}.lega-promo:first-child{padding-top:0}.lega-impact .wp-block-column:last-child{padding-left:1.25rem}.lega-impact h2,.lega-join h2{margin-bottom:0}.lega-topics>.lega-topic{padding:.5rem 1rem}.lega-news .wp-block-post-template{grid-template-columns:1fr}.footer-main{padding-block:3rem;flex-direction:column;gap:2rem}.footer-bottom{align-items:flex-start;flex-direction:column}.footer-nav>.menu{gap:2rem}.coming-main{grid-template-columns:1fr;padding-block:1rem 3rem}.coming-visual img{aspect-ratio:16/10;max-height:360px;border-radius:var(--lega-radius)}.coming-header{padding-block:1.5rem}.coming-main h1{font-size:clamp(2.75rem,10vw,4.5rem)}}
@media(max-width:600px){.admin-bar.has-sticky-header .site-header{top:0}.post-grid{grid-template-columns:1fr}.lega-hero h1{font-size:clamp(2.6rem,10.5vw,4rem)}.footer-bottom nav{width:100%}.lega-action-card{padding:1.5rem}.lega-card-number{margin-bottom:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.site-header,.header-menu-row,.site-footer,.menu-toggle,.coming-footer,.comments-area{display:none}body{background:#fff;color:#000}.site-container,.content-container{width:100%}.page-main{padding:0}.lega-section{break-inside:avoid}.site-main a{text-decoration:underline}}

@media(max-width:767px){.site-header .site-logo{height:40px}}

/* Compact mobile header; desktop positions remain configurable. */
.mobile-cta-bar{display:none}
@media(max-width:1099px){
 .site-header .header-top{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:'toggle brand search' 'nav nav nav';min-height:64px;padding-block:6px}
 .site-header .header-logo{grid-area:brand;justify-self:center}
 .site-header .header-ctas{display:none}
 .site-header .header-search{position:relative}
 .site-header .search-popover{right:0;top:calc(100% + .6rem)}
 .mobile-cta-bar{display:block;text-align:center;background:var(--lega-light);padding:4px 1rem}
 .mobile-cta-bar a{display:inline-block;padding:4px;color:var(--lega-dark);font-size:1rem;font-weight:600;line-height:1.5;text-decoration:none;text-transform:uppercase}
}
.mobile-menu{inset:0 auto 0 0;margin:0;padding:0;border:0;width:min(100%,420px);max-width:100%;height:100vh;height:100dvh;max-height:100dvh;background:var(--lega-white);color:var(--lega-dark);overflow:hidden}
.mobile-menu:not([open]){display:none}
.mobile-menu[open]{display:flex;flex-direction:column;animation:lega-drawer-in .22s ease-out}
.mobile-menu::backdrop{background:#093e2670}
.mobile-menu-open{overflow:hidden}
.mobile-menu-heading{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:6px 16px;border-bottom:1px solid var(--lega-light);flex-shrink:0}
.mobile-menu-heading .site-brand{grid-column:2}
.mobile-menu-heading .site-logo{width:auto;height:40px}
.mobile-menu-close{grid-column:3;justify-self:end;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;color:inherit}
.mobile-menu-body{display:flex;flex-direction:column;gap:24px;padding:16px 16px 24px;overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0}
.mobile-menu-navigation{flex:1}
.mobile-menu-panel[hidden]{display:none}
.mobile-menu-panel ul{list-style:none;padding:0;margin:0}
.mobile-menu-panel li{margin:0;border-bottom:1px solid var(--lega-light)}
.mobile-menu-panel a,.mobile-menu-panel button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:16px 4px;border:0;background:transparent;color:var(--lega-dark);font-size:18px;font-weight:500;line-height:1.5;text-decoration:none;text-align:left;overflow-wrap:anywhere}
.mobile-menu-panel li>a:after,.mobile-menu-panel li>button:after{content:'';width:9px;height:9px;border-top:1.5px solid;border-right:1.5px solid;transform:rotate(45deg);flex-shrink:0;margin-right:6px}
.mobile-menu-panel a:hover,.mobile-menu-panel button:hover{color:var(--lega-primary)}
.mobile-menu-panel .mobile-menu-back{justify-content:flex-start;font-size:16px}
.mobile-menu-back:before{content:'←'}
.mobile-menu-panel .mobile-menu-parent{font-size:24px;font-weight:600}
.mobile-menu .social-links{padding-top:16px;border-top:1px solid var(--lega-light)}
.mobile-menu .social-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--lega-dark);text-decoration:none}
@keyframes lega-drawer-in{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@media print{.mobile-menu{display:none!important}}
.mobile-menu .social-links a{justify-content:center;min-width:44px}

/* Links retain color and visible keyboard focus without underlines. */
a:any-link,a:any-link:hover,a:any-link:focus,a:any-link:active{text-decoration:none!important}
/* Footer: identity, three fixed menu slots, reserved right column. */
.site-footer .footer-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.4fr) minmax(0,1fr);gap:clamp(1.5rem,3vw,3rem);align-items:start;padding-block:4rem 5rem}
.site-footer .footer-brand{max-width:none;min-width:0}
.site-footer .footer-brand .site-brand{background:transparent;padding:0;border-radius:0;margin-bottom:1.5rem}
.footer-brand-default .site-logo{filter:brightness(0) invert(1)}
.site-footer .footer-brand address{margin:0;font-size:.875rem;line-height:1.5}
.site-footer .footer-tax{margin:0;font-size:.875rem;line-height:1.5;overflow-wrap:anywhere}
.site-footer .footer-brand .social-links{margin-top:1.75rem;gap:.5rem}
.site-footer .social-links a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#0003;color:#8ce8b0}
.site-footer .social-links svg{width:20px;height:20px}
.footer-menu-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;min-width:0}
.footer-menu-column{min-width:0}
.site-footer .footer-nav>.menu,.site-footer .footer-nav>div>.menu{display:block}
.site-footer .footer-nav a{display:inline-block;overflow-wrap:anywhere;color:#8ce8b0;font-size:1rem;font-weight:600;line-height:1.5}
.site-footer .footer-nav>.menu>li{margin:0 0 1.5rem}
.site-footer .footer-nav>.menu>li>a{font-size:1.125rem;line-height:1.75rem;color:var(--lega-white);font-weight:600}
.site-footer .footer-nav li li{margin-top:.5rem}
.site-footer .footer-nav>ul>li>ul{margin-top:1rem}
.site-footer .footer-nav ul ul ul{padding-left:.75rem}
.site-footer .footer-bottom{align-items:center;font-size:1rem;line-height:1.5}
.site-footer .footer-bottom small,.site-footer .footer-bottom ul{font-size:inherit;font-weight:400;line-height:inherit}
.site-footer .footer-bottom nav{margin-left:auto}
.site-footer .footer-bottom a{color:#8ce8b0}
.site-footer a:hover{opacity:.85}
@media(max-width:1099px){.site-footer .footer-main{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.footer-space{display:none}}
@media(max-width:781px){.site-footer .footer-main{grid-template-columns:1fr}.site-footer .footer-menu-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.site-footer .footer-bottom{align-items:flex-start}.site-footer .footer-bottom nav{margin-left:0}}
@media(max-width:480px){.site-footer .footer-menu-columns{grid-template-columns:1fr}}

/* Coming Soon fits the viewport with normal content; long text stays accessible. */
.coming-soon{--coming-admin-height:0px;min-height:calc(100vh - var(--coming-admin-height));min-height:calc(100dvh - var(--coming-admin-height))}
.coming-soon.admin-bar{--coming-admin-height:32px}
.coming-soon .coming-header{padding-block:clamp(.5rem,2vh,1.25rem);flex-shrink:0}
.coming-soon .coming-main{padding-block:clamp(.5rem,2vh,1.5rem);gap:clamp(1rem,4vw,4rem);flex:1}
.coming-soon .coming-copy h1{font-size:clamp(2rem,min(5vw,7vh),5rem);margin-block:.5rem 1rem}
.coming-soon .coming-description{font-size:clamp(1rem,2.3vh,1.25rem);margin-block:.5rem}
.coming-soon .coming-copy .eyebrow{margin-block:.5rem}
.coming-soon .coming-copy .entry-content p{margin-block:.75rem}
.coming-soon .coming-visual img{height:min(52vh,520px);width:100%;object-fit:contain;aspect-ratio:auto}
.coming-soon .coming-footer{padding-block:.75rem;gap:.5rem 1.25rem;flex-shrink:0}
@media(max-width:782px){.coming-soon.admin-bar{--coming-admin-height:46px}}
@media(max-width:781px){
 .coming-soon .coming-header .site-logo{height:40px;width:auto}
 .coming-soon .coming-main{grid-template-columns:1fr;gap:.5rem;align-content:center}
 .coming-soon .coming-copy h1{font-size:clamp(1.75rem,min(8vw,5.5vh),3rem)}
 .coming-soon .coming-visual img{height:min(22vh,180px)}
 .coming-soon .coming-footer{font-size:.75rem}
}
@media(max-height:500px) and (orientation:landscape){
 .coming-soon .coming-header .site-logo{height:32px;width:auto}
 .coming-soon .coming-main{grid-template-columns:1.3fr 1fr}
 .coming-soon .coming-visual img{height:38vh}
}

/* Lower footer: official 24px vertical spacing plus 16px final space. */
.site-footer .footer-bottom ul{gap:1rem}
@media(min-width:768px){
 .site-footer .footer-bottom{flex-direction:row;align-items:flex-start;padding-block:1.5rem 2.5rem}
 .site-footer .footer-bottom nav{margin-left:auto}
}

/* Native implementation of the reference React hero. */
.lega-slider{margin:0!important;width:100%;max-width:none!important;background:var(--lega-white);color:var(--lega-text);transition:background-color 1s ease}
.lega-slider-panel[data-tone=dark],.lega-slider[data-tone=dark]{background:var(--lega-dark);color:var(--lega-white)}
.lega-slider-panel[data-tone=light]{background:var(--lega-white);color:var(--lega-text)}
.lega-slider-panel[hidden]{display:none!important}
.lega-slider-inner{position:relative;max-width:var(--lega-wide);margin:auto;overflow:hidden}
.lega-slider .lega-slider-copy{position:relative;padding:1rem}
.lega-slider .lega-slider-copy h1,.lega-slider .lega-slider-copy h2{font-size:2.25rem;line-height:2.5rem;font-weight:700;letter-spacing:normal;color:inherit;margin:0}
.lega-slider .lega-slider-description{font-size:1.125rem;font-weight:500;line-height:1.625;margin:1.5rem 0 2rem;white-space:normal}
.lega-slider .lega-slider-description p{font-size:inherit;line-height:inherit;margin:0 0 1.5rem}
.lega-slider .lega-slider-description>:last-child{margin-bottom:0}
.lega-slider .lega-slider-description a{color:inherit}
.lega-slider .lega-slider-copy p:empty{display:none}
.lega-slider .lega-slider-copy .header-cta{width:100%}
.lega-slider-image img{display:block;width:100%;height:auto;object-fit:cover;object-position:center}
.lega-slider-tabs{display:flex;gap:1rem;overflow-x:auto;margin:0 auto;padding:1rem;max-width:100%;color:inherit}
.lega-slider-tabs a{position:relative;flex:0 0 auto;min-width:120px;padding:1rem 1.5rem;font-size:1rem;font-weight:600;text-align:center;white-space:nowrap;color:inherit;border-radius:2px}
.lega-slider-tabs a[aria-selected=true]{color:var(--lega-primary)}
.lega-slider-tabs a:hover:after,.lega-slider-tabs a[aria-selected=true]:after{content:'';position:absolute;bottom:4px;left:4px;width:calc(100% - 8px);height:4px;background:currentColor;border-radius:2px}
.lega-slider[data-tone=dark] .lega-slider-tabs a{color:var(--lega-white)}
.lega-slider-tabs a:focus-visible{outline:3px solid currentColor;outline-offset:-4px}
.lega-slider.is-enhanced .lega-slider-panel:not([hidden]){animation:lega-slide-reveal .45s ease}
@keyframes lega-slide-reveal{from{opacity:.2}to{opacity:1}}
@media(min-width:768px){
 .lega-slider .lega-slider-copy{width:50%;padding:4rem 4rem 4rem 1rem;min-height:440px}
 .lega-slider .lega-slider-copy h1,.lega-slider .lega-slider-copy h2{font-size:3.75rem;line-height:1}
 .lega-slider .lega-slider-copy .header-cta{width:auto}
 .lega-slider-image{position:absolute;inset:0 0 0 50%}
 .lega-slider-image img{height:100%}
 .lega-slider-tabs{justify-content:safe center}
}
@media(prefers-reduced-motion:reduce){.lega-slider{transition:none}.lega-slider.is-enhanced .lega-slider-panel:not([hidden]){animation:none}}

/* Homepage content has no entry-content wrapper: give standalone native blocks
   the same horizontal container as the page sections. Full-width and Yuga blocks
   retain their own layout and internal gutters. */
.homepage > :where(:not(.alignfull):not([class*="wp-block-yuga-"]):not(script):not(style)) {
 width:min(calc(100% - var(--lega-gutter)*2),var(--lega-wide));
 max-width:var(--lega-wide);
 margin-inline:auto;
}

/* Donut chart and text legend, rendered server-side without chart libraries. */
.lega-chart{display:flex;flex-direction:column;align-items:center;gap:32px;margin:32px auto;max-width:var(--lega-wide,1280px);width:100%;min-width:0;box-sizing:border-box}
.lega-chart .lega-chart-ring{display:block;width:320px;max-width:100%;height:auto;flex-shrink:0}
.lega-chart .lega-chart-legend{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0;width:100%;min-width:0}
.lega-chart .lega-chart-legend li{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:500;line-height:27px;color:var(--lega-text,#252625);overflow-wrap:anywhere}
.lega-chart-swatch{width:28px;height:28px;flex:0 0 28px;border-radius:3px}
@media(min-width:768px){.lega-chart{flex-direction:row;justify-content:center;flex-wrap:wrap}.lega-chart .lega-chart-legend{width:auto;flex:1 1 240px;gap:24px}}

/* Center the identity column without changing navigation columns. */
.site-footer .footer-brand{text-align:center}
.site-footer .footer-brand .social-links{justify-content:center}

/* Shop/product templates use the page's wide container, not the 760px text column. */
.lega-shop-container{min-width:0}
.single-product .lega-shop-container .woocommerce-breadcrumb{margin:0 0 clamp(2rem,4vw,3rem);line-height:1.5}
.lega-shop-container:after{content:'';display:table;clear:both}
.lega-shop-container .woocommerce-tabs .entry-content{width:100%;max-width:none}
.lega-shop-container .woocommerce-tabs .entry-content>*{max-width:100%}
.lega-shop-container .woocommerce-tabs .entry-content>:not(.alignfull){width:100%}
/* Hide only the category row in single-product metadata (keep SKU and tags). */
.single-product .product_meta .posted_in{display:none}

/* Native WooCommerce gallery: full-image links and a translucent lightbox. */
.single-product .woocommerce-product-gallery .flex-viewport{border-radius:1rem}
.single-product .woocommerce-product-gallery__image>a{display:block;border-radius:1rem;background:#f3f6f4;cursor:zoom-in}
.single-product .woocommerce-product-gallery__image>a>img{display:block;width:100%;height:auto;border-radius:inherit}
.single-product .woocommerce-product-gallery__image>a:focus-visible{outline:3px solid var(--lega-primary);outline-offset:-3px}
.single-product .woocommerce-product-gallery .flex-control-thumbs{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem!important}
.single-product .woocommerce-product-gallery .flex-control-thumbs li{float:none!important;width:calc((100% - 2.25rem)/4)!important}
.single-product .woocommerce-product-gallery .flex-control-thumbs img{border-radius:.5rem;outline-offset:-3px}
.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active{outline:2px solid var(--lega-primary)}
.single-product .pswp{z-index:100100}
.single-product .pswp .pswp__bg{background:#10251e}
.single-product .pswp .pswp__top-bar{background:rgba(0,0,0,.25)}
.single-product .pswp .pswp__button{opacity:1}
.single-product .pswp .pswp__button:hover{background-color:rgba(255,255,255,.14)}
.single-product .pswp .pswp__button:focus-visible{outline:2px solid #fff;outline-offset:-4px}
.single-product .pswp .pswp__counter{color:#fff;opacity:1;font-size:.875rem}
.single-product .pswp img.pswp__img{border-radius:.75rem}

/* Optional centered footer: the identity spans the page; menus sit below. */
.site-footer.footer-centered .footer-main{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}
.site-footer.footer-centered .footer-brand{width:100%;max-width:480px}
.site-footer.footer-centered .footer-space{display:none}
.site-footer.footer-centered .footer-menu-columns{width:100%;max-width:960px;grid-template-columns:repeat(var(--footer-menu-count,1),minmax(0,1fr))}
@media(max-width:480px){.site-footer.footer-centered .footer-menu-columns{grid-template-columns:1fr}}

/* Cart shortcut and confirmation, available only with WooCommerce. */
.lega-header-cart[hidden],.lega-cart-feedback[hidden]{display:none!important}
.lega-header-cart{flex-shrink:0}
.lega-header-cart>a{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--lega-dark);border-radius:50%}
.lega-header-cart>a:hover{background:var(--lega-light)}
.lega-cart-count{position:absolute;top:0;right:-2px;min-width:19px;padding:1px 4px;border-radius:20px;background:var(--lega-dark);color:#fff;font-size:.7rem;text-align:center;line-height:1.4}
.lega-cart-feedback{position:fixed;left:1rem;top:6rem;z-index:100200;width:min(380px,calc(100% - 2rem));max-height:calc(100dvh - 3rem);overflow:auto;padding:1.5rem;background:var(--lega-white);color:var(--lega-text);border:1px solid var(--lega-light);border-radius:1rem;box-shadow:0 12px 48px #093e2633}
.lega-cart-feedback-message{padding-right:1.25rem}
.lega-cart-feedback-message>strong{color:var(--lega-dark)}
.lega-cart-feedback p{margin:.65rem 0;font-size:.95rem;line-height:1.5;overflow-wrap:anywhere}
.lega-cart-feedback .header-cta{margin-top:.5rem}
.lega-cart-feedback-close{position:absolute;top:.4rem;right:.4rem;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--lega-dark);font-size:1.7rem}
.lega-cart-feedback-close:hover{background:var(--lega-light)}
@media(max-width:1099px){.lega-header-cart{grid-area:search;justify-self:end}.header-side-right:has(.header-search) .lega-header-cart{margin-right:48px}.site-header:has(.lega-header-cart:not([hidden])):has(.header-search) .header-top{grid-template-columns:minmax(44px,1fr) auto minmax(92px,1fr)}}
@media print{.lega-header-cart,.lega-cart-feedback{display:none!important}}

.lega-cart-feedback.is-cart-anchored:before{content:"";position:absolute;top:0;left:calc(var(--cart-pointer,50%) - 7px);border-left:7px solid transparent;border-right:7px solid transparent;border-top:7px solid var(--lega-primary)}

/* The cart keeps an accessible page title without an empty heading gap. */
.woocommerce-cart .entry-header.is-empty-cart{margin-bottom:0}
.woocommerce-cart .entry-header h1.screen-reader-text{margin:0}
