/* OHL editorial design system. Eight-point rhythm; accessible, restrained motion. */
:root{
 --paper:#f7f6f2;--ink:#222922;--muted:#62695f;--line:#dddfd5;
 --accent:#354e42;--accent-hover:#263e32;--surface:#fff;--surface-soft:#eeefe7;
 --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;
 --radius-sm:10px;--radius-md:16px;--radius-lg:24px;
 --shadow-card:0 2px 3px #283d2c03,0 8px 24px #283d2c05;
 --shadow-raised:0 3px 8px #283d2c06,0 16px 36px #283d2c0c;
 --ease-out:cubic-bezier(.22,1,.36,1);
}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-kerning:normal;text-rendering:optimizeLegibility}
.site-shell{width:min(100% - 64px,1184px)}
.site-header{min-height:96px;border-bottom:1px solid var(--line)}
.brand-mark{background:var(--accent);border-radius:12px;box-shadow:0 3px 8px #354e4212}
.brand-name{letter-spacing:-.025em}.header-actions{gap:24px}
.catalog-nav,.account-link{transition:color .2s var(--ease-out)}
a:hover{color:var(--accent)}
:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.button{min-height:48px;padding:12px 24px;gap:16px;border-radius:var(--radius-sm);background:var(--accent);border-color:var(--accent);color:#fff;font-size:.9rem;font-weight:600;box-shadow:0 2px 3px #203c2610;transition:background .2s,box-shadow .2s,transform .2s var(--ease-out)}
.button:hover{background:var(--accent-hover);color:#fff;box-shadow:0 4px 12px #203c2620;transform:translateY(-1px)}
.button:active{transform:translateY(0);box-shadow:none}.button:disabled{transform:none;box-shadow:none;opacity:.55}
.button-secondary{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:none}.button-secondary:hover{background:var(--surface-soft);color:var(--ink);border-color:#bdc5b9}
.language-trigger{border-color:var(--line);transition:background .2s,border-color .2s;min-height:44px}.language-trigger:hover{background:var(--surface-soft);border-color:#bdc5b9}
.eyebrow{font-size:.68rem;line-height:1.5;letter-spacing:.15em;font-weight:650;color:var(--accent)}
.course-hero{gap:var(--space-12);padding:var(--space-12) 0;align-items:center}
.course-hero-copy h1,.landing-page .lp-introduction h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.6rem,4.5vw,4.5rem);font-weight:400;letter-spacing:-.035em;line-height:1.08;text-wrap:balance;margin:16px 0 24px}
.course-hero .lp-prose{font-size:1.06rem;line-height:1.75;max-width:54ch}.course-hero .button{margin-top:24px}.course-hero .lp-media img{border-radius:var(--radius-lg)}
.lp-section{padding-block:32px}
.lp-section h2,.catalog-topic h2{font-size:clamp(1.6rem,2.6vw,2.25rem);font-weight:550;line-height:1.22;letter-spacing:-.035em;margin-bottom:24px}
.lp-section h3{font-size:1.15rem;font-weight:600;line-height:1.45;letter-spacing:-.015em}
.lp-prose,.learning-markdown{font-size:1.025rem;line-height:1.8;letter-spacing:0;max-width:68ch}
.lp-prose p{margin:0 0 16px}.lp-prose>*:last-child{margin-bottom:0}
.lp-prose h2,.learning-markdown h2{font-size:clamp(1.4rem,2.2vw,1.75rem);font-weight:600;letter-spacing:-.025em;margin:32px 0 16px;line-height:1.3}.lp-prose h3,.learning-markdown h3{font-size:1.25rem;margin:24px 0 12px}
.lp-prose ul,.lp-prose ol,.learning-markdown ul,.learning-markdown ol{margin-block:16px;padding-left:24px}.lp-prose li,.learning-markdown li{padding-left:4px;margin:8px 0}
.lp-prose a,.learning-markdown a{text-underline-offset:.2em;text-decoration-thickness:1px}.lp-prose a:hover,.learning-markdown a:hover{text-decoration-thickness:2px}
.lp-prose blockquote,.learning-markdown blockquote{border-left:3px solid #a7b5a0;background:var(--surface-soft);padding:20px 24px;border-radius:0 12px 12px 0;margin:24px 0;font-style:italic}
.lp-text.lp-layout-narrow,.module-description{max-width:760px}
.course-jump-nav{gap:32px;padding:4px 0;background:var(--paper);border-color:var(--line);box-shadow:0 6px 12px #27372703}
.course-jump-nav a{min-height:48px;color:var(--muted);font-size:.85rem;font-weight:600}.course-jump-nav a:hover{color:var(--accent)}
.product-info{padding-top:24px}.topic-links a{background:var(--surface-soft);border-color:transparent;color:var(--accent);font-size:.8rem;min-height:36px;display:flex;align-items:center}
.lp-media img,.content-video iframe,.media-player{border-radius:var(--radius-md)}
.lp-media img{background:var(--surface-soft)}.lp-media figcaption{line-height:1.6;margin-top:12px}
.lp-product-card{border-radius:var(--radius-md);border:1px solid var(--line);box-shadow:var(--shadow-card);transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out),border-color .3s}
.lp-product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-raised);border-color:#bfc8b9}
.lp-product-card .lp-media img{border-radius:0}.product-card-body{padding:24px;gap:0}.product-card-body h3{font-size:1.35rem;font-weight:600;line-height:1.35;letter-spacing:-.025em;margin:8px 0 16px}
.product-card-body .lp-prose{font-size:.95rem;line-height:1.7}.product-card-body .lp-card-price{font-variant-numeric:tabular-nums;font-size:1.3rem;margin-top:auto;padding-top:24px}.product-card-body .back-link{min-height:44px;display:flex;align-items:center;margin:8px 0;color:var(--accent);font-weight:550}
.product-card-body .button{width:100%}.catalog-topic .lp-grid{gap:24px}.catalog-topic>header{margin-bottom:24px}.catalog-topic{margin:32px 0 64px}
.storefront-filters{background:var(--surface);padding:24px;border-radius:var(--radius-md);border-color:var(--line);box-shadow:var(--shadow-card)}
.storefront-filters select{min-height:48px;background:var(--paper);border-color:var(--line);border-radius:var(--radius-sm);padding:12px 16px}.storefront-filters label>span{font-weight:550;font-size:.8rem}
.lp-course-contents details,.module-description{padding:16px 0;border-color:var(--line)}
.lp-course-contents summary,.module-description summary{min-height:44px;align-items:center;font-size:1rem;font-weight:600;transition:color .2s}.lp-course-contents summary:hover,.module-description summary:hover{color:var(--accent)}
.lp-module{padding:8px 0 8px 24px;border-left:2px solid var(--line);margin:16px 0 8px 8px}.lp-module h3{font-size:1rem;line-height:1.5;margin:0 0 8px}.lp-module ul{font-size:.94rem;line-height:1.7}
.purchase-card{padding:32px;border:1px solid #c8d1c2;border-radius:var(--radius-lg);box-shadow:var(--shadow-card);background:linear-gradient(135deg,#fff,#f0f3eb)}
.purchase-card h2{font-size:1.8rem;line-height:1.25;letter-spacing:-.025em}.purchase-card .lp-price{font-size:2.5rem;font-variant-numeric:tabular-nums;color:var(--accent)}
.learning-heading{max-width:880px;margin-bottom:32px}.learning-heading h1{font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.2;letter-spacing:-.035em;font-weight:550}.learning-columns{grid-template-columns:272px minmax(0,800px);gap:40px}
.learning-menu{padding:16px;background:var(--surface);border-color:var(--line);box-shadow:var(--shadow-card)}.learning-menu>summary{min-height:44px;display:flex;align-items:center;font-size:.95rem}
.learning-month>summary{min-height:44px;font-size:.9rem;padding:8px 0}.learning-outline a{padding:10px 12px;min-height:44px;line-height:1.5;transition:background .18s,color .18s}.learning-outline a:hover{background:var(--surface-soft)}.learning-outline a[aria-current]{background:var(--accent);color:white}
.learning-progress,.learning-attachment,.learning-notice{border-radius:var(--radius-md);padding:24px;border-color:var(--line)}.learning-next{gap:16px;margin:32px 0}.learning-next a{min-height:48px;display:flex;align-items:center;transition:background .2s,border-color .2s}.learning-next a:hover{background:var(--surface-soft);border-color:#bdc5b9}
.site-footer{padding:32px 0;color:var(--muted);font-size:.75rem}.site-footer a{min-height:44px}
@keyframes ohl-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.course-hero{animation:ohl-arrive .45s var(--ease-out) both}
@media(max-width:900px){.learning-columns{grid-template-columns:minmax(0,1fr);gap:24px}.learning-columns>aside{position:static;max-height:none}}
@media(max-width:700px){
 .site-shell{width:calc(100% - 32px)}.site-header{min-height:80px;padding:16px 0;gap:12px}.header-actions{gap:12px}.brand-name{font-size:.85rem}
 .course-hero{grid-template-columns:minmax(0,1fr);gap:24px;padding:32px 0}.course-hero-copy h1,.landing-page .lp-introduction h1{font-size:2.5rem;line-height:1.1;margin:12px 0 20px}.course-hero .lp-prose{font-size:1rem}.course-hero .lp-media img{border-radius:16px}
 .lp-section{padding-block:24px}.lp-section h2{font-size:1.6rem;margin-bottom:16px}.lp-prose,.learning-markdown{font-size:1rem;line-height:1.75}.course-jump-nav{gap:24px}.course-jump-nav a{font-size:.8rem;min-height:48px}
 .product-info{padding-top:16px}.lp-media-portrait,.lp-layout-contained:has(>.lp-media-portrait)>.lp-media{max-width:100%}.lp-module{padding-left:16px;margin-left:4px}
 .catalog-topic .lp-grid{gap:24px}.product-card-body{padding:24px}.product-card-body h3{font-size:1.25rem}.storefront-filters{padding:16px}.catalog-topic{margin-bottom:40px}.purchase-card{padding:24px}.purchase-card h2{font-size:1.6rem}
 .learning-heading h1{font-size:1.9rem}.learning-markdown h2{font-size:1.4rem}.learning-progress,.learning-attachment{padding:20px}
}
@media(hover:none){.lp-product-card:hover,.button:hover{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.course-hero{animation:none}.button,.lp-product-card,.learning-outline a{transition:none;transform:none}}
.catalogue-grid,.catalog-topic .catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.catalogue-grid .product-card-body h3{font-size:1.2rem}.catalogue-grid .product-card-body{padding:24px}
@media(max-width:1000px){.catalogue-grid,.catalog-topic .catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.catalogue-grid,.catalog-topic .catalogue-grid{grid-template-columns:minmax(0,1fr)}}

/* Homepage: keep introduction and film together, with one shared grid. */
.landing-page>.lp-edit-link{display:flex;width:max-content;margin:12px 0 0 auto;min-height:36px;padding:6px 12px;font-size:.8rem}
.home-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;align-items:center;padding:40px 0 48px}
.home-hero>.lp-section{padding:0}
.landing-page .home-hero .lp-introduction h1{font-size:clamp(2.5rem,3.7vw,3.6rem);max-width:17ch;line-height:1.1;margin:12px 0 20px}
.home-hero .lp-lead{font-size:1rem;line-height:1.7;max-width:44ch}
.home-hero .lp-section .button{margin-top:24px}
.homepage-document>.lp-section{padding-block:32px}
.homepage-document>.lp-section>.lp-media-video{max-width:100%;margin:0}
.homepage-document>.lp-split{gap:48px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.homepage-document>.lp-split .lp-media{justify-self:center;width:min(100%,320px)}
.homepage-document>.lp-text{max-width:none;margin:0}
@media(max-width:850px){.home-hero{grid-template-columns:minmax(0,1fr);gap:28px;padding:24px 0 32px}.home-hero .lp-lead{max-width:60ch}.landing-page .home-hero .lp-introduction h1{max-width:22ch;font-size:clamp(2.25rem,6vw,3.4rem)}.homepage-document>.lp-split{grid-template-columns:minmax(0,1fr);gap:24px}.homepage-document>.lp-split .lp-media{grid-column:auto;grid-row:auto}.homepage-document>.lp-section{padding-block:24px}}

.product-card-body .programme-card-action{margin-top:auto;align-self:stretch}.product-card-body:has(.programme-card-action) .lp-prose{margin-bottom:24px}

.programme-module-list{display:grid;gap:0;border-top:1px solid var(--line)}
.programme-module-row{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:48px;padding:32px 0;border-bottom:1px solid var(--line);align-items:start}
.programme-module-row h3{font-size:1.35rem;line-height:1.35;margin:0 0 16px;text-transform:none}
.programme-module-copy .lp-prose{max-width:68ch;font-size:1rem}
.programme-module-copy .back-link{display:inline-flex;min-height:44px;align-items:center;margin-top:8px;color:var(--accent)}
.programme-module-purchase .lp-card-price{font-size:1.5rem;margin:0;font-weight:600}
.programme-module-purchase>.muted{font-size:.8rem;margin:4px 0 16px}
.programme-module-purchase .button{width:100%;margin-top:0}.programme-module-purchase .muted{font-size:.8rem;line-height:1.5}
@media(max-width:700px){.programme-module-row{grid-template-columns:minmax(0,1fr);gap:20px;padding:24px 0}.programme-module-row h3{font-size:1.2rem}.programme-module-purchase{max-width:100%}}

.lp-productList>.lp-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}
.lp-grid .lp-product-card{height:auto;align-self:start}
.lp-product-card .product-card-body h3{font-size:1.2rem;margin:8px 0 12px}
.lp-product-card .product-card-body .lp-prose{font-size:.94rem;line-height:1.6}
.lp-product-card .product-card-body .lp-card-price{padding-top:16px}
.lp-product-pdf .lp-media img{padding:0;aspect-ratio:auto;height:auto;object-fit:contain;width:100%}
@media(max-width:1000px){.lp-productList>.lp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.lp-productList>.lp-grid{grid-template-columns:minmax(0,1fr)}}
/* Mixed media formats: course grid plus a full-cover book feature. */
.lp-productList>.lp-grid,.catalogue-grid{align-items:stretch}
.lp-grid .lp-product-course{height:100%;align-self:stretch}
.lp-grid .lp-product-pdf{grid-column:1/-1;display:grid;grid-template-columns:220px minmax(0,1fr);height:auto;align-self:start;order:1}
.lp-product-pdf .product-card-cover{height:100%;background:#fff}
.lp-product-pdf .lp-media img{display:block;width:100%;height:auto;padding:0;aspect-ratio:auto}
.lp-product-pdf .product-card-body{padding:28px 32px;max-width:760px;justify-content:center}
.lp-product-pdf .product-card-body .lp-card-price{margin-top:0}
.lp-product-pdf .product-card-body .button{width:auto;min-width:180px;align-self:flex-start}
.lp-product-pdf .product-card-body .lp-prose{max-width:60ch}
@media(max-width:650px){.lp-grid .lp-product-pdf{grid-template-columns:120px minmax(0,1fr)}.lp-product-pdf .product-card-body{padding:16px}.lp-product-pdf .product-card-body h3{font-size:1.05rem}.lp-product-pdf .product-card-body .button{min-width:0;width:100%;padding-inline:12px}.lp-product-pdf .product-card-body .lp-prose{font-size:.875rem}}
@media(max-width:380px){.lp-grid .lp-product-pdf{grid-template-columns:96px minmax(0,1fr)}}


/* A single row system for mixed-format browsing. */
.catalogue-grid,.catalog-topic .catalogue-grid,.lp-productList>.lp-grid{grid-template-columns:minmax(0,1fr);gap:20px}
.lp-grid .lp-product-card{display:grid;grid-template-columns:220px minmax(0,1fr);height:auto;align-self:stretch;grid-column:auto;order:0}
.lp-grid .product-card-cover{height:100%;background:var(--surface-soft)}
.lp-grid .lp-product-card .lp-media img{width:100%;height:100%;min-height:220px;aspect-ratio:auto;object-fit:cover}
.lp-grid .product-card-cover>a,.lp-grid .product-card-cover .lp-media{display:block;height:100%}
.lp-grid .lp-product-pdf .lp-media img{height:auto;min-height:0;object-fit:contain;padding:0}
.lp-grid .product-card-body{display:grid;grid-template-columns:minmax(0,1fr) 210px;column-gap:32px;align-content:center;max-width:none;padding:24px 28px}
.lp-grid .product-card-body>.eyebrow,.lp-grid .product-card-body>h3,.lp-grid .product-card-body>.lp-prose,.lp-grid .product-card-body>.back-link{grid-column:1}
.lp-grid .product-card-body>h3{margin:6px 0 12px;font-size:1.25rem}
.lp-grid .product-card-body>.lp-prose{max-width:62ch}
.lp-grid .product-card-body>.lp-card-price{grid-column:2;grid-row:2;margin:0;padding:0;font-size:1.3rem}
.lp-grid .lp-card-price span{display:block;font-size:.75rem;margin-top:4px}
.lp-grid .product-card-body>.offer-actions{grid-column:2;grid-row:3 / span 2}
.lp-grid .product-card-body>.programme-card-action{grid-column:2;grid-row:2 / span 2;align-self:center;margin:0}
.lp-grid .product-card-body .button{width:100%;min-width:0;margin-top:8px}
@media(max-width:900px){.lp-grid .lp-product-card{grid-template-columns:170px minmax(0,1fr)}.lp-grid .product-card-body{display:flex;padding:20px;gap:0}.lp-grid .product-card-body>.lp-card-price{margin-top:12px}.lp-grid .product-card-body>.programme-card-action{margin-top:16px}.lp-grid .product-card-body .button{width:auto;min-width:180px}}
@media(max-width:550px){.lp-grid .lp-product-card{grid-template-columns:100px minmax(0,1fr)}.lp-grid .product-card-body{padding:16px}.lp-grid .product-card-body>h3{font-size:1.05rem}.lp-grid .lp-product-course .lp-media img{min-height:180px;object-position:center}.lp-grid .product-card-body .button{width:100%;min-width:0}.lp-grid .product-card-body .lp-prose{font-size:.875rem}}

/* Editorial flow: adjacent text is continuous reading, media is a section break. */
.section-anchor{display:block;height:0;scroll-margin-top:96px}
.lp-text .lp-prose{max-width:none}
.lp-text .lp-prose>:first-child{margin-top:0}
.lp-text:has(+.lp-text){padding-bottom:16px}
.lp-text+.lp-text{padding-top:16px}
.lp-prose li>p,.learning-markdown li>p{margin-block:0}
.lp-prose li+li,.learning-markdown li+li{margin-top:8px}
.lp-module ul{margin:8px 0 0;padding-left:20px}
.lp-module li{margin:4px 0}
.lp-module h3{max-width:70ch}
.lp-course-contents details[open]>summary{margin-bottom:16px}
.lp-course-contents .lp-module{margin-block:16px;padding-block:8px}
.lp-course-contents .lp-module:last-child{margin-bottom:8px}
.lp-prose img,.learning-markdown img{display:block;width:100%;height:auto;margin:24px 0;border-radius:16px}
@media(max-width:700px){.lp-text:has(+.lp-text){padding-bottom:12px}.lp-text+.lp-text{padding-top:12px}}

/* Course landing pages: clear offer context and a calmer editorial hierarchy. */
.course-hero-copy h1{font-size:clamp(2.5rem,4vw,3.75rem);max-width:20ch;margin:16px 0 24px}
.course-hero .lp-prose{font-size:1rem;line-height:1.7}
.course-hero-action{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:24px}
.course-hero-action .button{margin-top:0;flex-shrink:0}
.course-hero-price{display:grid;gap:3px;margin:0;font-size:.8rem;color:var(--muted);line-height:1.5}
.course-hero-price strong{font-size:1.2rem;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.course-hero-price span{max-width:28ch}
.course-jump-nav{box-shadow:none}
.course-jump-nav+.lp-text{padding-top:40px}
.lp-text .lp-prose hr{border:0;border-top:1px solid var(--line);margin:28px 0}
@media(max-width:700px){.course-hero-copy h1{font-size:2.5rem}.course-hero-action{gap:16px}.course-hero-price{font-size:.75rem}.course-jump-nav+.lp-text{padding-top:28px}}

/* Editorial closing sections share the reading column, rather than three offsets. */
.editorial-document>.lp-text.lp-layout-narrow,
.editorial-document>.lp-cta,
.editorial-document>.lp-purchase{width:100%;max-width:760px;margin-inline:auto;box-sizing:border-box}
.editorial-document>.lp-cta{border-top:1px solid var(--line);margin-top:16px;padding-block:28px}
.editorial-document>.lp-cta h2{font-size:clamp(1.5rem,2.4vw,1.9rem);margin-bottom:16px}
.editorial-document>.lp-cta+.lp-purchase{padding-top:16px}
.editorial-document>.lp-purchase .purchase-card{max-width:none;margin:0;padding:28px}
.editorial-document>.lp-purchase .purchase-card h2{font-size:clamp(1.4rem,2.3vw,1.8rem);margin:8px 0 20px}
.editorial-document>.lp-purchase .lp-price-grid{gap:24px}
.editorial-document>.lp-purchase .lp-price-grid>section{padding:0}
.editorial-document>.lp-purchase .lp-price-grid h3{margin:0 0 8px;font-size:.95rem}
.editorial-document>.lp-purchase .lp-price{margin:0 0 8px;font-size:2.2rem;line-height:1.2}
.editorial-document>.lp-purchase .offer-actions{margin-top:20px}
.editorial-document>.lp-purchase .offer-actions>.button{margin-top:0}
.editorial-document>.lp-purchase .offer-actions>.muted{font-size:.8rem;line-height:1.6;margin:12px 0 0}
@media(max-width:700px){.editorial-document>.lp-purchase .purchase-card{padding:20px}.editorial-document>.lp-cta{padding-block:24px}}

/* Catalogue view controls and progressive browsing. */
.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:24px 0}
.catalog-toolbar .catalog-count{margin:0;font-size:.875rem}
.catalog-view-switch{display:flex;padding:4px;background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;gap:4px}
.catalog-view-switch a{display:flex;align-items:center;justify-content:center;min-width:64px;min-height:44px;padding:8px 16px;font-size:.875rem;border-radius:8px;color:var(--muted)}
.catalog-view-switch a[aria-current]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-card);font-weight:600}
.catalog-view-switch a:hover{color:var(--accent);background:#fff}
.catalog-pagination{display:flex;justify-content:center;margin-top:32px}.catalog-pagination .button{min-width:180px}
.catalog-topic-heading{margin:0 0 24px}.catalog-topic-heading h2{font-size:1.5rem;margin-bottom:12px}
.catalogue-grid.catalogue-view-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:24px}
.catalogue-view-grid.lp-grid .lp-product-card{display:flex;flex-direction:column;min-width:0;height:100%;overflow:hidden}
.catalogue-view-grid.lp-grid .product-card-cover{height:220px;flex:none}
.catalogue-view-grid.lp-grid .lp-media img{height:220px;min-height:0;max-height:220px;width:100%;object-fit:cover}
.catalogue-view-grid.lp-grid .lp-product-pdf .lp-media img{object-fit:contain;padding:8px}
.catalogue-view-grid.lp-grid .product-card-body{display:flex;flex-direction:column;flex:1;padding:24px;gap:0}
.catalogue-view-grid.lp-grid .product-card-body>h3{font-size:1.15rem;line-height:1.35}
.catalogue-view-grid.lp-grid .product-card-body>.lp-prose{font-size:.9rem;line-height:1.6;margin-bottom:16px}
.catalogue-view-grid.lp-grid .product-card-body>.lp-card-price{margin-top:auto;padding-top:8px}
.catalogue-view-grid.lp-grid .product-card-body>.back-link{margin:4px 0 12px}
.catalogue-view-grid.lp-grid .product-card-body>.programme-card-action{margin-top:auto}
.catalogue-view-grid.lp-grid .product-card-body .button{min-width:0;width:100%;margin-top:0}
.catalogue-view-grid .offer-actions>.muted{font-size:.75rem;line-height:1.5;margin-top:12px}
@media(max-width:1000px){.catalogue-grid.catalogue-view-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.catalogue-grid.catalogue-view-grid{grid-template-columns:minmax(0,1fr)}.catalog-toolbar{gap:12px}.catalog-view-switch a{min-width:52px;padding-inline:12px}.catalogue-view-grid.lp-grid .product-card-cover,.catalogue-view-grid.lp-grid .lp-media img{height:220px}.catalogue-view-grid.lp-grid .product-card-body{padding:20px}}

.programme-unreleased .programme-module-purchase>.muted{display:inline-block;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);color:var(--ink);margin:0}
.learning-locked{padding:10px 12px;line-height:1.5;min-height:44px}
.learning-next a{border-bottom:1px solid var(--line);padding:12px 16px;border-radius:8px}
@media(max-width:700px){.learning-next{flex-direction:column}.learning-next a{max-width:none;width:100%}}

/* Standalone editorial media shares the page grid; preserve the source ratio. */
.editorial-document>section.lp-media,
.homepage-document>section.lp-media{width:100%;max-width:none;margin-inline:0}
.editorial-document>section.lp-media>figure.lp-media,
.homepage-document>section.lp-media>figure.lp-media{width:100%;max-width:none;margin-inline:0}
.editorial-document>section.lp-media>figure.lp-media img,
.homepage-document>section.lp-media>figure.lp-media img{width:100%;height:auto;max-height:none;object-fit:contain}
.editorial-document>section.lp-media .media-player,
.homepage-document>section.lp-media .media-player{width:100%;max-width:none}

/* Portrait and square films fit the viewport rather than stretching to page width. */
.editorial-document>section.lp-media>figure.lp-media-portrait,
.homepage-document>section.lp-media>figure.lp-media-portrait{width:min(100%,440px,42.1875svh);max-width:100%;margin-inline:auto}
.editorial-document>section.lp-media>figure.lp-media-square,
.homepage-document>section.lp-media>figure.lp-media-square{width:min(100%,720px,75svh);max-width:100%;margin-inline:auto}

.editorial-document>section.lp-media>figure.lp-media-portrait:has(img),
.homepage-document>section.lp-media>figure.lp-media-portrait:has(img){width:min(100%,480px);margin-inline:auto}
.editorial-document>section.lp-media>figure.lp-media-portrait img,
.homepage-document>section.lp-media>figure.lp-media-portrait img{width:auto;max-width:100%;max-height:75svh;margin-inline:auto}

/* Paired portrait illustrations preserve readable proportions. */
.editorial-document>.lp-media-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;width:min(100%,1000px);margin:48px auto;align-items:start}
.lp-media-pair>section.lp-media{margin:0;padding:0;min-width:0;width:100%;max-width:none}
.lp-media-pair figure.lp-media{margin:0;width:100%;max-width:none}
.lp-media-pair figure.lp-media img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.lp-prose .content-video-portrait{width:min(100%,420px,42svh);aspect-ratio:9/16;margin:32px auto}
@media(max-width:640px){.editorial-document>.lp-media-pair{grid-template-columns:1fr;max-width:440px;gap:24px;margin-block:32px}}

/* Programme cards share the catalogue price and action grid positions. */
.lp-card-price .programme-price-label{display:block;font-size:.75rem;font-weight:500;color:var(--muted);margin-top:4px}
.programme-offer-actions{display:flex;flex-direction:column;gap:12px}
.programme-offer-actions>p{margin:0;line-height:1.6}

.programme-hero-note{font-size:.85rem;line-height:1.6;margin-top:12px;max-width:60ch}

/* Compact product actions navigate to a readable checkout instead of stretching cards. */
.checkout-purchase-page{max-width:640px;padding-block:32px 64px}
.checkout-purchase-page>.auth-card{padding:clamp(24px,4vw,40px);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card)}
.checkout-purchase-page .auth-card h3{font-size:clamp(1.35rem,3vw,1.75rem);line-height:1.3;letter-spacing:-.025em;margin:0 0 24px}
.checkout-purchase-page .auth-card .lp-price{font-size:2.5rem;line-height:1.1;margin:12px 0}
.checkout-purchase-page .auth-card form{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
.checkout-purchase-page .auth-card label{display:block;font-weight:600}
.checkout-purchase-page .auth-card input{display:block;width:100%;min-height:48px;margin-top:8px}
.checkout-purchase-page .auth-card .muted{font-size:.85rem}
.checkout-purchase-page .auth-card .button{width:100%;text-align:center;justify-content:center}
@media(max-width:600px){.checkout-purchase-page{padding-top:16px}.checkout-purchase-page>.auth-card{border-radius:16px}}

/* Purchase dialog stays outside catalogue layout in the browser top layer. */
dialog.purchase-dialog{width:min(600px,calc(100vw - 32px));max-width:600px;max-height:calc(100dvh - 32px);margin:auto;padding:24px 32px 32px;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--ink);box-shadow:0 24px 80px #17291d30;overflow-y:auto;overscroll-behavior:contain}
dialog.purchase-dialog::backdrop{background:rgb(20 31 25 / .48)}
.purchase-dialog .auth-dialog-close{display:flex;justify-content:flex-end;margin-bottom:8px}
.purchase-dialog .auth-card{padding:0;border:0}
.purchase-dialog h3{font-size:1.5rem;line-height:1.3;margin:0 0 24px}
.purchase-dialog p{margin:12px 0;line-height:1.6}
.purchase-dialog .lp-price{font-size:2.3rem;line-height:1.15}
.purchase-dialog .auth-card>form{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.purchase-dialog label{display:block}.purchase-dialog input{width:100%;min-height:48px;margin-top:8px}
.purchase-dialog .button{width:100%;justify-content:center;margin-top:16px}
.purchase-dialog .muted{font-size:.85rem}
body:has(dialog.purchase-dialog[open]){overflow:hidden}
@media(max-width:600px){dialog.purchase-dialog{padding:20px;border-radius:20px;max-height:calc(100dvh - 24px)}}

/* Keep account navigation separated in both modal and full-page views. */
.auth-card .auth-account-actions{display:grid;gap:12px;margin:0 0 20px}
.auth-card .auth-account-actions>.button{margin:0}
.auth-card .auth-account-actions+.auth-destination{margin:0 0 24px}

/* Administration: compact operational rhythm, separate from marketing layouts. */
.admin-navigation{display:flex;flex-wrap:wrap;gap:8px;padding:16px 0;border-bottom:1px solid #dce1da;margin-bottom:32px}
.admin-navigation a{padding:10px 14px;border-radius:10px;text-decoration:none;font-size:14px;font-weight:600;min-height:44px;display:flex;align-items:center}
.admin-navigation a[aria-current=page]{background:#344f43;color:white}
.admin-navigation a:hover{background:#e7ece5;color:#24382e}
.admin-workspace{padding-top:8px}
.admin-workspace h1{font-family:inherit;font-size:clamp(28px,3vw,40px);line-height:1.15;letter-spacing:-.025em}
.admin-workspace h2{font-size:23px;line-height:1.3;margin:0 0 16px}
.admin-report{display:grid;gap:24px;padding-bottom:48px}
.admin-report header p,.admin-report header h1{margin:0 0 12px}
.admin-report p{line-height:1.6;margin:0 0 12px}
.admin-filters{display:flex;align-items:end;flex-wrap:wrap;gap:16px;background:#fff;padding:20px;border:1px solid #dce1da;border-radius:14px}
.admin-filters label{display:grid;gap:8px;min-width:200px;font-size:14px;font-weight:600}
.admin-filters input,.admin-filters select{min-height:46px;margin:0}
.admin-filters .button,.admin-pagination .button{min-height:46px;padding:12px 20px;margin:0}
.admin-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}
.admin-metrics article{background:#fff;border:1px solid #dce1da;border-radius:14px;padding:20px}
.admin-metrics article p{font-size:14px;color:#59635c;margin:0 0 12px}
.admin-metrics strong{font-size:30px;line-height:1.2;font-variant-numeric:tabular-nums}
.admin-panel{background:#fff;border:1px solid #dce1da;border-radius:16px;padding:24px}
.admin-panel .admin-metrics{margin:16px 0}
.admin-notice{background:#eff2e9;border-left:3px solid #526b49;padding:14px 18px;border-radius:8px}
.admin-table-scroll{overflow-x:auto;border:1px solid #dce1da;border-radius:12px;background:#fff}
.admin-table{width:100%;border-collapse:collapse;text-align:left;font-size:15px}
.admin-table th{background:#edf0ea;font-size:13px;white-space:nowrap}
.admin-table th,.admin-table td{padding:16px;border-bottom:1px solid #e5e9e2;vertical-align:middle}
.admin-table td:first-child{overflow-wrap:anywhere;min-width:220px}
.admin-table small{display:block;color:#626b63;margin-top:6px}
.admin-row-actions{display:flex;gap:12px;flex-wrap:wrap}
.admin-row-actions a{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}
.admin-pagination{display:flex;gap:12px}
.admin-workspace :focus-visible{outline:3px solid #638576;outline-offset:3px}
@media(max-width:640px){.admin-filters{display:grid;grid-template-columns:1fr}.admin-filters label{min-width:0}.admin-panel{padding:16px}.admin-navigation{gap:4px;margin-bottom:24px}.admin-navigation a{font-size:13px;padding:10px}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-metrics strong{font-size:25px}}

.media-video-thumbnail{object-fit:cover;aspect-ratio:16/9}.media-video-preview{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;border-radius:12px;margin-bottom:16px;background:#e7ece5}

/* Compact media selection and course progress */
.media-picker-actions{position:sticky;bottom:0;background:var(--surface,#fff);padding:16px 24px;border-top:1px solid #dde1d7;z-index:2}
.media-picker-actions>div{display:flex;justify-content:flex-end;gap:12px}
.media-picker-actions p{margin:0 0 12px;overflow-wrap:anywhere}
.media-card.is-selected{outline:3px solid #345044;outline-offset:2px}
.compact-search{display:flex;align-items:center;position:relative}
.compact-search[open]{display:flex;gap:12px}
.compact-search summary{list-style:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #dce0d6;border-radius:12px;cursor:pointer}
.compact-search summary::-webkit-details-marker{display:none}
.compact-search[open] summary{float:left;margin-right:12px}
.compact-search label{display:inline-block}
.compact-search input[type=search]{width:min(320px,55vw)}
.learning-card progress{width:100%;height:8px;accent-color:#345044}
.learning-card .learning-resume{font-size:.9rem;line-height:1.5;margin:16px 0}
.learning-card .learning-percent{font-size:.85rem;font-weight:600;margin:8px 0 16px}

.merch-settings{margin:24px 0}.merch-settings textarea{max-width:640px}
.merch-list{display:grid;gap:12px;margin:24px 0}
.merch-row summary{display:flex;gap:24px;align-items:center;justify-content:space-between;cursor:pointer;min-height:48px}
.merch-row summary span{font-size:.875rem;white-space:nowrap;color:#657063}
.merch-row form{margin-top:24px;display:grid;gap:16px}
.merch-fields{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}
.merch-actions,.merch-history{display:flex;gap:12px;align-items:center}.merch-history{justify-content:space-between;margin-top:16px}
.catalogue-section{margin:24px 0 40px}
@media(max-width:640px){.merch-fields{grid-template-columns:1fr}.merch-row summary{align-items:flex-start;flex-direction:column;gap:8px}}

/* Articles and compact search */
.site-header{position:sticky;top:0;z-index:60;background:var(--paper,#f7f6f2);transition:transform .24s ease,box-shadow .24s ease}
.site-header.is-scrolled{box-shadow:0 8px 22px #25251f0a}
.site-header.is-scroll-hidden{transform:translateY(calc(-100% - 2px));pointer-events:none}
.site-header:focus-within{transform:none;pointer-events:auto}
.expand-search{position:relative;margin:1.5rem 0}
.expand-search>summary{display:inline-flex;align-items:center;gap:.5rem;list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:999px;min-height:44px;padding:.6rem .8rem;background:var(--surface,#fff)}
.expand-search>summary::-webkit-details-marker{display:none}
.expand-search[open]>summary{background:var(--ink,#272d24);color:white}
.expand-search>form{display:flex;align-items:end;gap:1rem;margin-top:1rem;max-width:42rem}
.expand-search .field{margin:0;flex:1}.expand-search input{width:100%;min-height:46px}
.catalog-search{margin:0}.catalog-search[open]{flex:1;min-width:220px}.catalog-search>.field{margin-top:.75rem}
.articles-page{padding:3rem 0}.articles-heading{display:flex;align-items:start;justify-content:space-between;gap:2rem}.articles-heading h1{font-size:clamp(2.8rem,6vw,5rem);letter-spacing:-.055em;line-height:1.05;margin:.6rem 0 1rem}.articles-heading p{max-width:40rem}
.article-count{margin:1rem 0}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.article-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--surface,#fff);display:flex;flex-direction:column}
.article-cover{display:block;aspect-ratio:16/10;overflow:hidden;background:#e9e7df}.article-cover img{height:100%;width:100%;object-fit:cover;transition:transform .3s}.article-card:hover .article-cover img{transform:scale(1.025)}
.article-placeholder{display:grid;place-items:center;height:100%;font-family:serif;font-size:1.7rem;color:#6b715c}
.article-card-copy{padding:1.5rem;display:flex;flex-direction:column;gap:1rem;flex:1}.article-card h2{font-size:1.3rem;line-height:1.3;letter-spacing:-.02em}.article-card h2 a{text-decoration:none}.article-card-copy>p:not(.eyebrow){display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);font-size:.95rem;line-height:1.6}.article-card-copy>.back-link{margin-top:auto}
.article-pagination{display:flex;justify-content:center;gap:.6rem;margin-top:2rem}.article-pagination [aria-current]{background:var(--ink);color:white}
.article-reader{max-width:820px;margin:3rem auto 5rem}.article-reader header{margin:2rem 0}.article-reader h1{font-size:clamp(2.1rem,5vw,3.6rem);line-height:1.12;letter-spacing:-.04em;margin:.8rem 0 1rem}
.article-hero{width:100%;max-height:560px;object-fit:cover;border-radius:18px;margin:1rem 0 2rem}
.article-teaser{font-size:1.2rem;line-height:1.8;margin:1rem 0 2rem}.article-gate{padding:2.5rem;border:1px solid var(--line);border-radius:22px;background:var(--surface,#fff);text-align:center}.article-gate h2{font-size:1.8rem;margin:.7rem 0 1rem}.article-gate p{margin-bottom:1.5rem}
.article-prose{font-size:1.12rem;line-height:1.85;overflow-wrap:anywhere}.article-prose p,.article-prose ul,.article-prose ol,.article-prose figure{margin:1.3em 0}.article-prose h1,.article-prose h2,.article-prose h3{line-height:1.25;margin:1.6em 0 .7em;font-size:1.8rem}.article-prose img{max-width:100%;height:auto;border-radius:12px}.article-prose iframe{width:100%;aspect-ratio:16/9;height:auto;border:0}.article-prose blockquote{border-left:3px solid #7e8b63;padding-left:1.5rem;margin:2rem 0}.article-prose ul{list-style:disc;padding-left:1.5rem}.article-prose ol{list-style:decimal;padding-left:1.5rem}.article-prose table{display:block;max-width:100%;overflow:auto}
.article-admin-row{display:flex;justify-content:space-between;gap:1rem;text-decoration:none}.article-admin-search{display:flex;align-items:end;gap:1rem;margin:1.5rem 0}.article-admin-search .field{flex:1}
.merch-bulk{margin:1rem 0;max-height:28rem;overflow:auto}.merch-bulk-row{display:grid;grid-template-columns:minmax(0,1fr) 7rem;align-items:center;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--line)}.merch-bulk-row input[type=number]{width:100%;min-height:44px}.merch-section-row{display:grid;grid-template-columns:minmax(0,1fr) 7rem;gap:1rem;align-items:end}.merch-section-row input{width:100%}
@media(max-width:1000px){.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-actions{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:700px){.article-grid{grid-template-columns:1fr}.articles-heading{display:block}.articles-heading .button{margin-top:1rem}.article-reader{margin-top:2rem}.article-gate{padding:1.5rem}.header-actions{width:100%;justify-content:space-between;gap:.5rem}.site-header .brand{font-size:.85rem}.catalog-search[open]{min-width:100%}.expand-search>form{flex-wrap:wrap}.expand-search>form .field{min-width:100%}}
@media(prefers-reduced-motion:reduce){.site-header,.article-cover img{transition:none}}
/* Scoped catalogue editor: consistent controls and compact field rhythm. */
#merchandising .merch-row{padding:24px;border-radius:18px;box-shadow:0 2px 8px #25342904}
#merchandising .merch-row[open]{border-color:#abb8ad;box-shadow:0 8px 28px #25342908}
#merchandising .merch-row summary{list-style:none;gap:16px;min-height:40px}
#merchandising .merch-row summary::-webkit-details-marker{display:none}
#merchandising .merch-row summary::after{content:'+';font-size:1.4rem;flex-shrink:0;color:#526b5b}
#merchandising .merch-row[open] summary::after{content:'−'}
#merchandising .merch-row summary strong{flex:1;line-height:1.4}
#merchandising .merch-row summary span{background:#f1f4ef;border-radius:8px;padding:7px 10px;font-variant-numeric:tabular-nums}
#merchandising .merch-row form{margin-top:20px;padding-top:20px;border-top:1px solid var(--line);gap:20px}
#merchandising .field{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin:0;min-width:0}
#merchandising .field>span{display:block;font-size:.875rem;font-weight:600;line-height:1.4;color:#465348}
#merchandising .field input,#merchandising .field select,#merchandising .field textarea{display:block;box-sizing:border-box;width:100%;max-width:none;min-width:0;margin:0;border:1px solid #cdd4ca;border-radius:10px;background:#fff;color:#263329;padding:12px 14px;font:inherit;font-size:1rem;line-height:1.5;min-height:48px}
#merchandising .field textarea{min-height:150px;resize:vertical;overflow:auto}
#merchandising .field select{appearance:auto;cursor:pointer;padding-right:30px}
#merchandising .field :is(input,select,textarea):focus-visible{outline:2px solid #486752;outline-offset:2px;border-color:#486752}
#merchandising .merch-fields{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,.65fr);gap:16px;align-items:start}
#merchandising .catalog-check{display:flex;align-items:center;gap:10px;margin:0;line-height:1.5}
#merchandising input[type=checkbox]{width:18px;height:18px;flex-shrink:0;accent-color:#365446}
#merchandising .merch-actions{border-top:1px solid var(--line);padding-top:18px;gap:12px;flex-wrap:wrap}
#merchandising .merch-actions .button{min-height:46px;padding:11px 20px}
#merchandising .merch-settings{display:grid;gap:20px;padding:24px}
#merchandising .merch-settings>.button{justify-self:start}
#merchandising .merch-settings h2,#merchandising .merch-settings h3,#merchandising .merch-settings p{margin:0}
#merchandising .merch-settings textarea{min-height:90px}
@media(max-width:700px){#merchandising .merch-row,#merchandising .merch-settings{padding:18px}#merchandising .merch-fields{grid-template-columns:1fr 1fr}#merchandising .merch-fields>.field:first-child{grid-column:1/-1}#merchandising .merch-row summary{display:grid;grid-template-columns:1fr auto}#merchandising .merch-row summary strong{grid-column:1}#merchandising .merch-row summary span{grid-column:1;justify-self:start;white-space:normal}#merchandising .merch-row summary::after{grid-column:2;grid-row:1/3}#merchandising .merch-actions .button{flex:1}}
@media(max-width:400px){#merchandising .merch-fields{grid-template-columns:1fr}}
.merch-intro{max-width:780px;margin:24px 0 32px}.merch-intro p{line-height:1.7;margin:12px 0 20px}.merch-order-group{border:1px solid var(--line);border-radius:12px;padding:16px}.merch-order-group h3{padding-bottom:12px}.merch-move{display:flex;gap:8px}.merch-move button{border:1px solid #cdd4ca;border-radius:8px;background:white;width:44px;height:44px;cursor:pointer;font-size:1.2rem}.merch-move button:disabled{opacity:.25;cursor:default}#merchandising .merch-bulk-row{grid-template-columns:minmax(0,1fr) auto}#merchandising .merch-fields{grid-template-columns:1.4fr 1fr}@media(max-width:700px){#merchandising .merch-fields{grid-template-columns:1fr}}
.user-workspace{max-width:1100px;margin:24px auto;display:grid;gap:24px}.user-heading h1{font-size:clamp(1.5rem,3vw,2.4rem);overflow-wrap:anywhere;margin:8px 0 12px}.user-heading p{max-width:760px;line-height:1.7}.user-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;background:#edf1e9;border-radius:16px;padding:24px}.user-summary span,.user-summary strong{display:block}.user-summary span{font-size:.85rem;color:#667263;margin-bottom:8px}.user-workspace .content-card{padding:24px;border-radius:16px}.user-workspace h2{font-size:1.3rem;margin-bottom:12px}.user-access-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}.user-access-row p{margin-top:6px}.user-access-row:last-of-type{margin-bottom:20px}.user-grant summary{cursor:pointer;font-size:1.15rem;font-weight:600}.user-grant p{line-height:1.6;margin:16px 0}.user-grant form{display:grid;gap:20px}.user-grant .field{display:grid;gap:8px;margin:0}.user-grant :is(select,textarea){width:100%;padding:12px;border:1px solid #cdd4ca;border-radius:10px;background:white;font:inherit;box-sizing:border-box}.user-grant button{justify-self:start}.user-technical{color:#667263;font-size:.85rem}.user-technical summary{cursor:pointer}.user-technical p{overflow-wrap:anywhere}@media(max-width:650px){.user-summary{grid-template-columns:1fr}.user-access-row{align-items:start;flex-direction:column}.user-workspace .content-card{padding:18px}}
/* Consistent form anatomy across editorial and administrative pages. */
.admin-workspace .field{display:flex;flex-direction:column;gap:8px;min-width:0}.admin-workspace .field>span{display:block;font-size:.875rem;font-weight:600}.admin-workspace .field>textarea,.admin-workspace .field>select{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;border:1px solid #cdd4ca;border-radius:10px;padding:12px 14px;background:white;color:var(--ink);font:inherit;line-height:1.5}.admin-workspace .field>textarea{resize:vertical;min-height:110px}.admin-workspace .field>select{min-height:48px;appearance:auto}.admin-workspace .content-card{min-width:0}.admin-workspace .catalog-card-text>.back-link{display:inline-block;margin-right:20px;margin-top:12px}.admin-workspace #product-publication{scroll-margin-top:140px}.admin-workspace .operations-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px 24px}.admin-workspace .operations-fields div{padding:12px 0;border-bottom:1px solid var(--line)}.admin-workspace textarea:focus-visible,.admin-workspace select:focus-visible{outline:2px solid #486752;outline-offset:2px}
.access-workspace{max-width:1120px;margin-inline:auto}.access-search{display:flex;align-items:end;gap:16px;margin-top:20px}.access-search .field{flex:1;min-width:0}.access-customer,.access-product>header,.enrollment-card>header{display:flex;justify-content:space-between;align-items:start;gap:24px}.access-customer h2{overflow-wrap:anywhere}.access-list{display:grid;gap:18px}.access-product h3,.enrollment-card h2{margin:0 0 12px;font-size:1.35rem}.access-product details,.enrollment-advanced{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.access-workspace summary,.enrollment-advanced summary{cursor:pointer;font-weight:600}.access-badge{display:inline-block;flex-shrink:0;background:#edf2e9;color:#345044;border-radius:30px;padding:8px 14px;font-size:.875rem}.access-badge[data-access-state=empty]{background:#f0efeb;color:#6a6a62}.access-record{padding:16px 0;border-bottom:1px solid var(--line)}.access-record a{display:block;margin-top:8px}.access-lessons{padding:0;list-style:none}.access-lessons li{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}.access-lessons li span:last-child{white-space:nowrap}.access-inactive{margin-top:28px}.enrollment-card{margin-block:24px}.enrollment-advanced form{max-width:640px}.enrollment-advanced button{margin-top:16px}@media(max-width:700px){.access-search,.access-customer,.access-product>header,.enrollment-card>header{flex-direction:column;align-items:stretch}.access-badge{align-self:flex-start}.access-lessons li{flex-direction:column;gap:4px}}
.merch-arrangement{margin-block:28px;border:1px solid var(--line);border-radius:20px;background:#fff}.merch-arrangement>summary{cursor:pointer;padding:24px;font-weight:650}.merch-arrangement .merch-settings{border:0;margin:0;box-shadow:none}#merchandising .merch-section-row{display:flex;align-items:end;gap:16px}#merchandising .merch-section-row>.field{flex:1;margin:0}#merchandising .merch-row[hidden]{display:none}.merch-search{max-width:640px;margin-bottom:24px}.access-customer{margin-top:18px}.access-workspace details.content-card>summary{line-height:1.5}
.billing-technical{margin-block:32px;border-top:1px solid var(--line);padding-top:24px}.billing-technical>summary,.admin-panel>summary{font-weight:650;cursor:pointer;padding-block:12px}.admin-workspace code{overflow-wrap:anywhere}.enrollment-card .access-badge{white-space:normal;max-width:50%}@media(max-width:700px){.enrollment-card .access-badge{max-width:100%}}
.admin-workspace input:is([type=search],[name=q]),.admin-workspace select{box-sizing:border-box;border:1px solid #cdd4ca;border-radius:10px;padding:12px 14px;background:#fff;color:var(--ink);font:inherit;max-width:100%}.admin-workspace #payment-options{scroll-margin-top:130px}
.admin-report{grid-template-columns:minmax(0,1fr);min-width:0}.admin-report>*{min-width:0}.admin-panel,.admin-table-scroll{min-width:0;max-width:100%;box-sizing:border-box}
/* Homepage membership closing offer, below the course selection. */
.landing-page .lp-section.lp-membership{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;max-width:none;width:100%;margin:48px 0 24px;padding:48px 56px;border:1px solid #cdd6ca;border-radius:24px;background:#eaf0e6;color:#263c30;box-shadow:none}.lp-membership .eyebrow{color:#526c58;margin:0 0 18px;font-size:.7rem;letter-spacing:.16em}.landing-page .lp-membership h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;margin:0 0 18px;font-size:clamp(1.8rem,3vw,2.6rem);letter-spacing:-.04em;line-height:1.15}.membership-name{font-weight:450}.membership-one{font-weight:750;letter-spacing:.08em}.lp-membership .lp-prose{color:#526153;max-width:52ch;font-size:1.05rem}.lp-membership .lp-prose p{margin:0}.lp-membership .membership-action .button{margin:0;background:#334e40;color:#fff;border-color:#334e40;min-width:180px}.lp-membership .membership-action .button:hover{background:#263c30}.lp-membership .membership-action .button:focus-visible{outline:2px solid #263c30;outline-offset:5px}@media(max-width:700px){.landing-page .lp-section.lp-membership{grid-template-columns:minmax(0,1fr);gap:26px;padding:30px 24px;margin-top:30px}.lp-membership .membership-action .button{width:100%}.landing-page .lp-membership h2{font-size:1.9rem}}
.catalog-live-search{margin:24px 0 40px;width:100%;max-width:none}.catalog-search-label{display:block;font-weight:600;margin-bottom:12px;font-size:1.05rem}.catalog-search-box{display:flex;align-items:center;gap:14px;border:1px solid #cbd3c7;background:#fff;border-radius:16px;padding:6px 16px;box-shadow:0 3px 12px #263c3005}.catalog-search-box:focus-within{outline:2px solid #486752;outline-offset:3px}.catalog-search-box input{flex:1;min-width:0;min-height:54px;border:0;background:transparent;outline:none;font-size:1.05rem;color:var(--ink)}.catalog-search-box input::-webkit-search-cancel-button{display:none}.catalog-search-box button{width:40px;height:40px;font-size:26px;border-radius:50%;background:#f0f3ec}.catalog-live-search>p{margin:12px 0 0;font-size:.9rem}.catalog-search-previews{display:grid;gap:14px;margin:12px 0 32px}.catalog-search-preview{display:grid;grid-template-columns:120px minmax(0,1fr) 24px;gap:24px;align-items:center;padding:20px;border:1px solid #dde3d8;border-radius:18px;background:#fff;transition:border-color .15s,box-shadow .15s}.catalog-search-preview:hover,.catalog-search-preview:focus-visible{border-color:#486752;box-shadow:0 5px 20px #263c300c}.catalog-search-preview img{width:120px;height:100px;object-fit:cover;border-radius:10px}.catalog-search-preview h2{font-size:1.25rem;font-weight:650;line-height:1.3;margin:7px 0}.catalog-search-preview p{font-size:.95rem;line-height:1.55;color:#667060;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}.catalog-preview-price{display:block;margin-top:10px;font-weight:650}.catalog-preview-price small{font-weight:400;color:#667060}.catalog-preview-placeholder{display:grid;place-items:center;background:#edf1e8;height:100px;border-radius:10px}.catalog-preview-arrow{font-size:24px;color:#486752}.storefront-catalog .catalogue-section{margin:48px 0 64px}.storefront-catalog .catalogue-section>h2{font-family:Georgia,serif;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:500;line-height:1.18;letter-spacing:-.025em;margin:0 0 28px;padding:0;max-width:30ch}.storefront-catalog .catalogue-section+.catalogue-section{padding-top:36px;border-top:1px solid #d8ded3}@media(max-width:700px){.catalog-live-search{margin:20px 0 28px}.catalog-search-preview{grid-template-columns:76px minmax(0,1fr);gap:16px;padding:16px;align-items:start}.catalog-search-preview img{width:76px;height:82px}.catalog-preview-placeholder{height:82px}.catalog-preview-arrow{display:none}.catalog-search-preview h2{font-size:1.05rem}.catalog-search-preview p{font-size:.85rem}.storefront-catalog .catalogue-section{margin:32px 0 42px}.storefront-catalog .catalogue-section>h2{margin-bottom:22px;font-size:1.9rem}.storefront-catalog .catalogue-section+.catalogue-section{padding-top:28px}}
#catalog-search-loading{display:none;min-width:18px;color:#526c58}#catalog-search-loading.htmx-request{display:block}.catalog-search-box input:focus-visible{outline:none}
/* Informational navigation and social profiles, shared by all public pages. */
.site-footer.site-footer-expanded{display:block;padding-top:3rem;padding-bottom:2rem}
.footer-main{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:3rem;margin-bottom:2.5rem}
.site-footer-expanded .footer-main nav{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem}
.site-footer-expanded h2{font:600 1rem/1.5 var(--font-sans, sans-serif);letter-spacing:0;color:var(--ink,#26352d);margin:0 0 .5rem}
.site-footer-expanded a{line-height:1.5;text-decoration:none}
.site-footer-expanded a:hover{text-decoration:underline;text-underline-offset:4px}
.site-footer-expanded .footer-legal{display:flex;gap:1.5rem;flex-wrap:wrap;border-top:1px solid #dfe2d9;padding-top:1.5rem}
.footer-newsletter{display:grid;grid-template-columns:1fr 1.5fr;gap:2rem;border-top:1px solid #dfe2d9;padding:2rem 0}
.footer-newsletter iframe{width:100%;height:540px;border:0;border-radius:16px;background:white}
@media(max-width:700px){.footer-main{grid-template-columns:1fr 1fr;gap:2rem}.footer-main .footer-brand{grid-column:1/-1}.footer-newsletter{grid-template-columns:1fr}.site-footer-expanded .footer-legal{gap:1rem}}
.info-photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin:3rem auto;max-width:1200px}
.info-photo-gallery>.lp-section{margin:0!important;padding:0!important;min-width:0}
.info-photo-gallery .lp-media{margin:0;width:100%;max-width:none}
.info-photo-gallery img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:20px}
@media(max-width:600px){.info-photo-gallery{gap:.75rem;margin:2rem auto}.info-photo-gallery img{border-radius:12px}}
/* Catalog visual administration */
.catalog-studio{max-width:1440px;margin:auto;padding:20px 0 80px}.studio-heading{max-width:760px;margin:20px 0 36px}.studio-heading h1{font-size:clamp(32px,4vw,56px)}.studio-toolbar{position:sticky;top:0;z-index:20;background:#faf8f3f5;backdrop-filter:blur(12px);border:1px solid #dcd8ce;border-radius:12px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px}.studio-toolbar strong{margin-right:auto}.studio-options{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin:20px 0}.studio-options button,.studio-section-header button,.studio-card-actions button{border:1px solid #d8d4c9;border-radius:7px;background:#fff;padding:7px 12px}.studio-section{margin:36px 0}.studio-section-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.studio-section-header input:not([type=hidden]){font-size:24px;font-weight:600;border:0;border-bottom:1px dashed #aaa;background:transparent;min-width:0;flex:1;padding:10px}.studio-grip{cursor:grab;font-size:28px;color:#867c6b}.studio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;min-height:50px}.studio-card{background:#fff;border:1px solid #dedbd3;border-radius:12px;overflow:hidden;cursor:grab}.studio-card:has(input[type=checkbox]:not(:checked)){opacity:.65}.studio-cover{display:block;position:relative;width:100%;height:190px;border:0;background:#e9e5da;color:#655c49;padding:0;cursor:pointer}.studio-cover img{width:100%;height:100%;object-fit:cover}.studio-cover small{display:block;font-size:13px;margin:10px}.studio-edit-badge{position:absolute;bottom:10px;right:10px;background:#fff;padding:7px 12px;border-radius:30px;font-size:12px}.studio-card-body{padding:20px}.studio-card-body h3{font-size:20px;line-height:1.3;margin:10px 0}.studio-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;color:#68685f;min-height:60px}.studio-card-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:18px}.studio-move-label{display:flex;align-items:center;gap:10px;font-size:13px;margin-top:16px}.studio-move-label select{min-width:0;max-width:75%;padding:7px;border:1px solid #ddd;border-radius:6px}.studio-drop-hint{border:1px dashed #c9c4b5;border-radius:10px;padding:12px;text-align:center;color:#847b68;font-size:13px}.studio-dragging{opacity:.35}.studio-dialog{width:min(1100px,96vw);max-width:96vw;height:92vh;padding:0;border:0;border-radius:16px;box-shadow:0 20px 100px #0005}.studio-dialog::backdrop{background:#17251d80}.studio-dialog>header{display:flex;justify-content:space-between;padding:16px 22px;border-bottom:1px solid #ddd}.studio-dialog iframe{width:100%;height:calc(100% - 60px);border:0}.studio-embedded>.site-header,.studio-embedded>.site-footer,.studio-embedded .admin-navigation,.studio-embedded #intercom-container{display:none!important}.studio-embedded main{padding-top:20px}.studio-section[hidden]{display:none}.studio-card [type=checkbox],.studio-options [type=checkbox]{width:auto}@media(max-width:1000px){.studio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.studio-grid{grid-template-columns:1fr}.studio-toolbar{position:static}.studio-section-header{flex-wrap:wrap}.studio-section-header input:not([type=hidden]){flex-basis:70%}}
.studio-embedded .site-shell>.site-header,.studio-embedded .site-shell>.site-footer{display:none!important}
.site-footer-expanded .footer-main{align-items:start}
.site-footer-expanded .footer-main nav{align-self:start;justify-content:flex-start;max-width:none;gap:.15rem;font-size:.875rem}
.site-footer-expanded .footer-legal{max-width:none;justify-content:flex-start;font-size:.8125rem}
/* Informational pages: shared editorial rhythm, unique photography. */
.info-redesign,.stories-page{padding:32px 0 64px}.info-breadcrumb{display:flex;gap:12px;font-size:12px;color:var(--muted);margin:0 0 32px}.info-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;padding:20px 0 56px}.info-hero h1,.stories-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(38px,4.5vw,64px);line-height:1.06;letter-spacing:-.045em;margin:20px 0 24px;max-width:650px}.info-lead,.info-lead h2,.info-lead p{font-size:20px;font-weight:400;line-height:1.6;color:#60685f;margin:0}.info-lead strong{font-weight:400}.info-hero-image figure{margin:0}.info-hero-image img{width:100%;height:450px!important;max-height:none!important;object-fit:cover;border-radius:6px}.info-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:28px}.info-actions p{margin:0}.info-actions p a{display:inline-flex;align-items:center;background:#344c3f;color:#fff;border:1px solid #344c3f;border-radius:7px;padding:13px 20px;text-decoration:none;font-size:14px;font-weight:600}.info-actions p+p a{background:transparent;color:#344c3f}.info-principle{padding:48px;background:#e8e9df;border-radius:6px}.info-principle p{font:400 clamp(28px,3vw,42px)/1.25 Georgia,serif;letter-spacing:-.025em;color:#344c3f;margin:30px 0}.info-principle>span:last-child{font-size:12px;color:#687262}.info-jump{display:flex;gap:10px;flex-wrap:wrap;padding:20px 0;border-block:1px solid var(--line);margin-bottom:12px}.info-jump a{font-size:12px;line-height:1.5;padding:8px 12px;border:1px solid var(--line);border-radius:30px}.info-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.75fr);gap:80px;padding:56px 0;border-bottom:1px solid var(--line);scroll-margin-top:24px}.info-row h2{font:400 clamp(24px,2.5vw,34px)/1.2 Georgia,serif;letter-spacing:-.02em;margin:14px 0}.info-row .lp-prose{font-size:16px;line-height:1.8;color:#465047;max-width:none}.info-row .lp-prose p{margin:0 0 18px}.info-row .lp-prose h2{font-size:24px}.info-row .lp-prose a{color:#344c3f;font-weight:600;text-underline-offset:5px}.info-photo-break{margin:48px 0}.info-photo-break figure{margin:0}.info-photo-break img{width:100%;height:460px!important;object-fit:cover;object-position:center;max-height:none!important;border-radius:6px}.info-video{margin-bottom:28px}.info-next{background:#e8e9df;padding:48px;margin-top:64px;border-radius:6px}.info-next h2{font:400 clamp(28px,3vw,42px)/1.2 Georgia,serif;margin:16px 0}.stories-hero{display:grid;grid-template-columns:1.6fr 1fr;gap:80px;padding:40px 0 64px;align-items:center}.stories-intro{max-width:560px;font-size:18px;color:#657065;line-height:1.7;margin-bottom:28px}.stories-hero aside{background:#344c3f;color:#f6f4ea;padding:48px;border-radius:6px}.stories-number{font:400 100px/1 Georgia,serif;letter-spacing:-.06em}.stories-hero aside p{font-size:22px;line-height:1.5;margin:24px 0 40px}.stories-hero aside .eyebrow{color:#d4ddce}.stories-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:40px}.stories-heading h2{font:400 30px/1.25 Georgia,serif;margin:12px 0}.stories-heading>p{white-space:nowrap;font-size:14px;color:var(--muted)}.story-filters{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 40px}.story-filters button{border:1px solid #d9ddd2;border-radius:30px;padding:10px 17px;background:transparent;color:#465047;font-size:13px;cursor:pointer}.story-filters button[aria-pressed=true]{background:#344c3f;color:#fff;border-color:#344c3f}.story-group{margin:48px 0 64px}.story-group[hidden]{display:none}.story-group>header{display:flex;align-items:center;gap:16px;margin-bottom:22px}.story-group>header h2{font-size:22px;margin:0}.story-group>header span{font-size:12px;color:var(--muted)}.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.story-card{background:#fff;border:1px solid #e1e2da;border-radius:8px;padding:28px;min-width:0}.story-quote-mark{font:48px/1 Georgia,serif;color:#91a083}.story-card blockquote{margin:0;border:0;padding:0}.story-card blockquote p{font:400 18px/1.65 Georgia,serif;color:#39463a;margin:0 0 24px}.story-card footer{display:flex;flex-direction:column;gap:6px;border-top:1px solid #e8e9e1;padding-top:18px}.story-card footer strong{font-size:14px}.story-card footer span{font-size:12px;color:#737c70;line-height:1.5}.story-full{margin-top:20px}.story-full summary{font-size:13px;font-weight:600;cursor:pointer;color:#344c3f}.story-full blockquote{padding-top:20px}.story-full blockquote p{font-family:inherit;font-size:15px}.story-card:has(.story-full[open])>blockquote{display:none}
@media(max-width:950px){.info-hero,.stories-hero{gap:32px}.info-row{gap:32px}.story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-principle{padding:32px}}
@media(max-width:650px){.info-redesign,.stories-page{padding-top:20px}.info-hero,.stories-hero,.info-row{grid-template-columns:1fr;gap:24px}.info-hero,.stories-hero{padding:12px 0 32px}.info-hero h1,.stories-hero h1{font-size:42px}.info-hero-image img{height:340px!important}.info-row{padding:32px 0}.info-row h2{margin-bottom:0}.info-photo-break img{height:300px!important}.info-jump{flex-wrap:nowrap;overflow:auto}.info-jump a{flex-shrink:0;max-width:240px}.stories-hero aside{padding:28px}.stories-number{font-size:64px}.stories-hero aside p{margin:16px 0;font-size:18px}.stories-heading{display:block}.story-grid{grid-template-columns:1fr}.info-next{padding:28px}.story-card{padding:24px}.info-lead,.info-lead h2,.info-lead p{font-size:18px}}
/* Keep Anna's portrait and biography together as one section. */
.anna-development{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.75fr);gap:64px;align-items:start;padding:56px 0;border-bottom:1px solid var(--line)}
.anna-development-photo .lp-media{width:100%;max-width:none;margin:0}
.anna-development-photo .lp-media img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;border-radius:6px}
.anna-development-copy h2{font:400 clamp(28px,3vw,40px)/1.15 Georgia,serif;letter-spacing:-.025em;margin:16px 0 26px;max-width:560px}
.anna-development-copy .lp-prose{max-width:none;font-size:16px;line-height:1.8;color:#465047}
.anna-development-copy .lp-prose p{margin:0 0 18px}
@media(max-width:700px){.anna-development{grid-template-columns:1fr;gap:28px;padding:32px 0}.anna-development-photo{max-width:420px;width:100%;margin-inline:auto}.anna-development-copy h2{margin-top:12px}}

/* Compact newsletter above the footer navigation. */
.site-footer-expanded .footer-newsletter{align-items:center;grid-template-columns:1fr 1.3fr;background:#edf0e9;border:1px solid #dce3d7;border-radius:20px;padding:36px;gap:36px;margin:0 0 48px}.site-footer-expanded .footer-newsletter h2{font-family:var(--font-serif,Georgia,serif);font-size:clamp(1.6rem,2.6vw,2.2rem);font-weight:400;line-height:1.15;max-width:360px;margin-bottom:12px}.site-footer-expanded .footer-newsletter p{margin:0;font-size:14px;line-height:1.6;color:#657164}.footer-newsletter iframe{height:166px;border-radius:0;background:transparent}@media(max-width:700px){.site-footer-expanded .footer-newsletter{grid-template-columns:1fr;gap:24px;padding:26px 22px;margin-bottom:32px}.footer-newsletter iframe{height:210px}}


/* UX audit: task-focused administration, legible lists and compact mobile navigation. */
.admin-site .site-shell{max-width:1400px}.admin-site .site-header{position:relative;min-height:80px}.admin-site .admin-workspace{padding-bottom:32px;min-height:65vh}.admin-workspace>.admin-page{max-width:1120px}.admin-navigation{margin-bottom:28px;gap:4px;padding-block:14px}.admin-navigation a{font-size:13px;padding:9px 12px;flex-shrink:0}.admin-navigation a[aria-current=page]:hover{background:#344f43;color:#fff}
.admin-dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:32px 0}.admin-dashboard-heading h1{font-size:clamp(30px,4vw,42px);line-height:1.1;letter-spacing:-.035em;margin:10px 0 14px}.admin-dashboard-heading p{margin:0}.admin-dashboard-group{margin:36px 0}.admin-dashboard-group>header{margin-bottom:18px}.admin-dashboard-group>header h2{font-size:21px;margin:0 0 6px;letter-spacing:-.02em}.admin-dashboard-group>header p{font-size:14px;margin:0}.admin-task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.admin-task-card{display:flex;justify-content:space-between;align-items:start;gap:20px;padding:24px;background:#fff;border:1px solid #dce2d9;border-radius:14px;text-decoration:none;transition:border-color .15s,box-shadow .15s;min-width:0}.admin-task-card h3{font-size:17px;line-height:1.35;margin:0 0 9px;color:#253c30}.admin-task-card p{font-size:14px;line-height:1.6;color:#657164;margin:0}.admin-task-card>span{font-size:20px;color:#657164}.admin-task-card:hover{border-color:#718978;box-shadow:0 4px 16px #263c3009}.admin-account-strip{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 0;border-top:1px solid #dce2d9;font-size:13px;color:#657164}.admin-account-strip span{overflow-wrap:anywhere;min-width:0}.admin-account-strip a{flex-shrink:0;padding-block:10px}.admin-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;border-top:1px solid #dce2d9;color:#657164;font-size:13px}.admin-footer a{padding-block:10px}
.article-create{padding:20px 24px;margin-block:24px}.article-create>summary{cursor:pointer;font-weight:600;min-height:24px}.article-create form{padding-top:18px;max-width:700px}.article-admin-search{display:flex;align-items:end;gap:16px;margin:28px 0 16px}.article-admin-search .field{flex:1;margin:0;min-width:0}.article-admin-search input{width:100%}.article-admin-search>a{padding:12px 0;white-space:nowrap}.article-result-count{font-size:13px;margin-bottom:16px}.article-admin-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 24px;border:1px solid #dce2d9;border-radius:12px;text-decoration:none}.article-admin-row>strong{font-size:16px;line-height:1.5;font-weight:600;min-width:0;overflow-wrap:anywhere}.article-admin-row:hover{border-color:#718978;background:#fcfdfb}.article-row-meta{display:flex;align-items:center;gap:12px;flex-shrink:0;font-size:12px}.article-state{padding:5px 10px;border-radius:30px;background:#f1eee5;color:#6f5c31}.article-state[data-state=published]{background:#eaf1e7;color:#37523f}.article-state[data-state=archived]{background:#eee;color:#626660}.article-row-meta small{font-size:12px}.admin-empty{text-align:center;padding:40px 24px}
.admin-workspace .media-pagination{display:flex;gap:16px;justify-content:space-between;margin-top:24px}.admin-workspace .media-pagination a{min-height:44px;display:inline-flex;align-items:center;padding:10px 16px;border:1px solid #dce2d9;border-radius:9px;background:white}.admin-workspace .media-search{gap:12px;flex-wrap:wrap}.admin-workspace :is(input,select,textarea){scroll-margin-top:24px}.admin-workspace .admin-table th{font-size:12px;letter-spacing:.025em}.admin-workspace .admin-table td{vertical-align:top}.admin-workspace .admin-table td:first-child{overflow-wrap:anywhere}.admin-workspace .admin-row-actions a{display:inline-flex;align-items:center;min-height:36px}.admin-workspace .content-card>h2:first-child{margin-top:0}
.public-site :is(.info-row,.anna-development,.lp-section,.story-group,.info-next)[id]{scroll-margin-top:120px}.public-site .info-jump a{min-height:44px;display:inline-flex;align-items:center}.public-site .footer-pages a,.public-site .footer-social a{display:inline-flex;align-items:center;min-height:36px}.public-site .learning-library>.back-link{display:inline-flex;align-items:center;min-height:44px;margin-right:24px}
@media(max-width:900px){.admin-task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-admin-row{align-items:start}.article-row-meta{flex-wrap:wrap;justify-content:flex-end;max-width:180px}}
@media(max-width:700px){.admin-site .header-actions{width:auto;flex:1;justify-content:flex-end}.admin-site .site-header{flex-wrap:nowrap}.admin-site .site-header .brand-name{display:none}.admin-site .header-actions{gap:10px}.admin-site .language-trigger{padding:8px 10px}.admin-site .admin-navigation{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;margin-bottom:24px;padding-block:10px;gap:5px}.admin-navigation a{font-size:13px;padding:10px 12px}.admin-dashboard-heading{align-items:start;margin-top:12px}.admin-dashboard-heading .status-label{font-size:11px}.admin-task-grid{grid-template-columns:1fr}.admin-task-card{padding:20px;min-height:104px}.admin-dashboard-group{margin:28px 0}.admin-account-strip{flex-wrap:wrap;gap:4px}.admin-footer{font-size:12px}.article-admin-search{flex-wrap:wrap;gap:12px}.article-admin-search .field{flex-basis:100%}.article-admin-row{flex-direction:column;gap:12px;padding:18px}.article-row-meta{max-width:none;justify-content:flex-start}.article-row-meta>span:last-child{margin-left:auto}.article-admin-row>.article-row-meta{width:100%}.public-site :is(.info-row,.anna-development,.lp-section,.story-group)[id]{scroll-margin-top:155px}}
/* Original OneHorseLife wordmark, recreated as font-independent vector paths. */
.site-header .brand{flex-shrink:0}
.brand-wordmark{display:block;width:252px;max-width:100%;height:auto}
@media(max-width:700px){.brand-wordmark{width:210px}.admin-site .brand-wordmark{width:140px}}
@media(max-width:380px){.admin-site .brand-wordmark{width:115px}}
