body.ao-editorial-body { margin:0; width:100%; max-width:100%; background:#f7f4ed; }
#ao-editorial .ao-related { padding:70px 7vw; border-top:1px solid #d3c9b8; }
#ao-editorial .ao-related>h2 { font-size:clamp(38px,4.5vw,70px); line-height:1.1; }
#ao-editorial .ao-related .editorial-grid { padding:35px 0 0; }
#ao-editorial .book-landing-image img { position:absolute; inset:0; width:100%; height:100%; }
#ao-editorial .book-editions .button { max-width:100%; min-width:0; gap:20px; margin-top:24px; }
#ao-editorial .book-landing-hero h1 { overflow-wrap:anywhere; }
#ao-editorial .contact-page-heading h1 { font-size:clamp(48px,7vw,115px); }
#ao-editorial .contact-direct a { overflow-wrap:anywhere; }
#ao-editorial .ao-contact-details { padding:35px; background:var(--paper); align-self:start; }
#ao-editorial .ao-contact-details h2 { font-size:clamp(34px,3.8vw,58px); line-height:1.08; }
#ao-editorial .ao-contact-details>p { margin:24px 0; line-height:1.7; }
#ao-editorial .ao-contact-details .button { max-width:100%; min-width:0; gap:15px; }
#ao-editorial .ao-contact-details .ao-contact-note { font-size:13px; }
#ao-editorial .ao-company-details { margin-top:32px; padding-top:24px; border-top:1px solid #d3c9b8; }
#ao-editorial { position:relative; font-family:'AO IBM Plex Sans',sans-serif; font-size:16px; line-height:1.5; }
#ao-editorial [hidden] { display:none !important; }
#ao-editorial h1,#ao-editorial h2,#ao-editorial h3,#ao-editorial h4 { text-transform:none; }
#ao-editorial .ao-skip { position:absolute; left:20px; top:-100px; z-index:100; background:#fff; padding:12px; }
#ao-editorial .ao-skip:focus { top:10px; }
#ao-editorial .ao-latest,#ao-editorial .ao-archive { padding:80px 7vw; }
#ao-editorial .ao-latest .library-heading { max-width:860px; }
#ao-editorial .ao-latest .library-heading>p:last-child { max-width:760px; }
#ao-editorial .ao-latest .editorial-grid,#ao-editorial .ao-archive .editorial-grid { padding:36px 0; }
#ao-editorial .ao-episode-card .editorial-image { aspect-ratio:1; background:#e2d6bd; }
#ao-editorial .ao-episode-card .editorial-image img { object-fit:contain; }
#ao-editorial .editorial-image img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
#ao-editorial .podcast-art img,#ao-editorial .podcast-archive-art img { width:100%; height:100%; object-fit:contain; position:absolute; inset:0; }
#ao-editorial .archive-tools { display:grid; align-items:end; grid-template-columns:minmax(140px,.6fr) minmax(200px,1.5fr) auto; }
#ao-editorial .archive-tools .archive-year,#ao-editorial .archive-tools .archive-search { min-width:0; width:100%; }
#ao-editorial .archive-tools .button { min-width:100px; }
#ao-editorial .archive-pagination { flex-wrap:wrap; padding:20px 0; }
#ao-editorial .ao-audiences { grid-template-columns:1fr 1fr; align-items:start; min-height:0; }
#ao-editorial .ao-audience-details details { padding:20px 0; border-top:1px solid #c8bda9; }
#ao-editorial .ao-audience-details summary { cursor:pointer; font:400 clamp(26px,2.4vw,38px)/1.2 'AO Bodoni Moda',serif; }
#ao-editorial .ao-audience-details p { max-width:620px; }
#ao-editorial .ao-single { padding:190px 7vw 90px; }
#ao-editorial .ao-single-heading { max-width:1000px; margin:0 auto 40px; }
#ao-editorial .ao-single-heading h1 { font-size:clamp(42px,5.2vw,90px); line-height:1.06; overflow-wrap:anywhere; }
#ao-editorial .ao-single-heading .index-label { margin-top:30px; }
#ao-editorial .ao-single-image { margin:0 auto 45px; max-width:1000px; }
#ao-editorial .ao-single-image img { width:100%; height:auto; max-height:800px; object-fit:contain; }
#ao-editorial .ao-single-content,#ao-editorial .ao-share,#ao-editorial .ao-comments { width:100%; max-width:780px; margin:0 auto; }
#ao-editorial .ao-single-content { font-size:18px; line-height:1.85; }
#ao-editorial .ao-single-content img { max-width:100%; height:auto; }
#ao-editorial .ao-single-content iframe,#ao-editorial .ao-single-content video { max-width:100%; }
#ao-editorial .ao-single-content h2 { font-size:clamp(30px,3vw,48px); line-height:1.2; margin:40px 0 20px; }
#ao-editorial .ao-single-content a { text-decoration:underline; text-underline-offset:3px; }
#ao-editorial .ao-single-content blockquote { border-left:1px solid #9b8054; padding-left:24px; margin:32px 0; }
#ao-editorial .ao-single-episode { background:#26302d; color:#f7f4ed; }
#ao-editorial .ao-single-episode .index-label { color:#e2d6bd; }
#ao-editorial .ao-single-episode .ao-single-image { max-width:650px; }
#ao-editorial .ao-platforms { max-width:780px; margin:0 auto 40px; display:flex; gap:16px; justify-content:flex-start; flex-wrap:wrap; }
#ao-editorial .ao-platforms a { padding:12px 18px; min-height:48px; border:1px solid currentColor; }
#ao-editorial .ao-share { display:flex; gap:24px; flex-wrap:wrap; margin-top:45px; padding-top:20px; border-top:1px solid #c8bda9; }
#ao-editorial .ao-share button { background:none; border:0; cursor:pointer; }
#ao-editorial .ao-comments { margin-top:40px; }
#ao-editorial .footer-nav a { display:block; }
#ao-editorial .footer-nav .arrow-icon,#ao-editorial .footer-legal .arrow-icon { display:none; }
#ao-editorial a[aria-disabled="true"] { cursor:default; opacity:.6; }
#ao-editorial summary:focus-visible,#ao-editorial select:focus-visible { outline:2px solid var(--brown); outline-offset:4px; }
#ao-editorial .ao-single-episode :focus-visible { outline-color:var(--beige); }
#ao-editorial .ao-library-image { position:absolute; inset:0; padding:0; background:transparent; }
#ao-editorial .ao-library-image img { width:100%; height:100%; object-fit:cover; }
#ao-editorial .library-index .ao-library-title { display:flex; flex-direction:column; gap:9px; color:inherit; }
#ao-editorial .library-index button { gap:0; }
#ao-editorial .audience-answer[hidden],#ao-editorial .library-answer[hidden] { display:none; }
#ao-editorial .shop-book img,#ao-editorial .product-card-image>img { position:absolute; inset:0; width:100%; height:100%; }
#ao-editorial .shop-toolbar { flex-wrap:wrap; gap:18px; }
#ao-editorial .shop-toolbar .woocommerce-notices-wrapper { flex:0 0 100%; }
#ao-editorial .shop-toolbar .woocommerce-notices-wrapper:empty { display:none; }
#ao-editorial .shop-toolbar .woocommerce-ordering { margin:0; float:none; }
#ao-editorial .shop-toolbar select { max-width:100%; min-height:44px; font-size:12px; border:0; background:transparent; }
#ao-editorial .product-grid { margin:0; padding:0; list-style:none; }
#ao-editorial .product-card-buy .button { background:none; border:0; min-width:0; padding:8px 0; font-size:10px; color:var(--ink); letter-spacing:.11em; }
#ao-editorial .product-card-buy { flex-wrap:wrap; gap:12px; }
#ao-editorial .product-card-buy .added_to_cart { flex-basis:100%; text-decoration:underline; font-size:13px; }
#ao-editorial .product-card-buy .button.loading { opacity:.55; }
#ao-editorial .product-card-buy .button.added::after { content:' ✓'; }
#ao-editorial .ao-mini-cart { position:relative; }
#ao-editorial .ao-mini-cart>summary { cursor:pointer; list-style:none; }
#ao-editorial .ao-mini-cart>summary::-webkit-details-marker { display:none; }
#ao-editorial .ao-cart-count { margin-left:24px; }
#ao-editorial .ao-mini-cart-panel { position:absolute; right:0; top:calc(100% + 12px); z-index:10; width:min(420px,92vw); padding:24px; background:var(--paper); color:var(--ink); border:1px solid #c8bda9; box-shadow:0 15px 40px #161d1c20; max-height:70vh; overflow:auto; }
#ao-editorial .ao-mini-cart-panel .index-label { margin-bottom:18px; }
#ao-editorial .ao-mini-cart-panel ul { list-style:none; margin:0; padding:0; }
#ao-editorial .ao-mini-cart-panel li { position:relative; padding:16px 24px 16px 0; border-bottom:1px solid #d3c9b8; min-height:105px; font-size:14px; }
#ao-editorial .ao-mini-cart-panel li img { float:left; width:62px; height:85px; object-fit:contain; margin:0 14px 8px 0; }
#ao-editorial .ao-mini-cart-panel .remove { position:absolute; right:0; top:8px; min-width:24px; min-height:32px; }
#ao-editorial .ao-mini-cart-panel .total { margin:20px 0; }
#ao-editorial .ao-mini-cart-panel .buttons { display:flex; flex-wrap:wrap; gap:12px; }
#ao-editorial .ao-mini-cart-panel .button { color:var(--paper); background:var(--brown); gap:0; min-width:0; padding:12px 14px; }
#ao-editorial .ao-newsletter-form { min-width:0; }
#ao-editorial .ao-newsletter-form .newsletter-description { margin-bottom:24px; text-transform:none; letter-spacing:normal; }
#ao-editorial .ao-newsletter-form .ml-form-embedWrapper { max-width:100% !important; background:transparent !important; }
#ao-editorial .ao-newsletter-form .ml-form-embedBody { padding:0 !important; }
#ao-editorial .ao-newsletter-form input[type=email] { font-family:var(--font-sans),sans-serif !important; font-size:16px !important; border:0 !important; border-bottom:1px solid var(--ink) !important; border-radius:0 !important; background:transparent !important; }
#ao-editorial .ao-newsletter-form button.primary { min-height:50px; font-family:var(--font-sans),sans-serif !important; background:var(--brown) !important; color:var(--paper) !important; border-radius:0 !important; }
#ao-editorial .ao-single-content :is(p,ul,ol) { margin-bottom:1.4em; }
#ao-editorial .ao-single-content ul { list-style:disc; padding-left:1.5em; }
#ao-editorial .ao-single-content ol { list-style:decimal; padding-left:1.5em; }
@media (max-width:900px) {
  #ao-editorial .ao-mini-cart { position:static; }
  #ao-editorial .ao-mini-cart-panel { left:16px; right:16px; top:100%; width:auto; max-width:none; }
  #ao-editorial .ao-audiences { grid-template-columns:1fr; }
  #ao-editorial .archive-tools { grid-template-columns:1fr; gap:18px; }
  #ao-editorial .ao-latest,#ao-editorial .ao-archive { padding:50px 6vw; }
  #ao-editorial .ao-single { padding:155px 6vw 55px; }
  #ao-editorial .ao-single-content { font-size:17px; }
  #ao-editorial #ao-navigation.open { position:absolute; top:100%; left:0; right:0; max-height:70vh; overflow-y:auto; }
}
@media (prefers-reduced-motion:reduce) {
  #ao-editorial,#ao-editorial * { scroll-behavior:auto !important; animation:none !important; transition:none !important; }
}
#ao-editorial .support-line { height:44px; min-height:44px; justify-content:space-between; gap:8px; }
#ao-editorial .ao-social-links { display:flex; align-items:center; flex:0 0 auto; gap:2px; }
#ao-editorial .ao-social-links a { width:44px; min-height:44px; display:inline-flex; align-items:center; justify-content:center; color:var(--bone,#eeeae1); border:0; border-radius:2px; }
#ao-editorial .ao-social-links svg { display:block; width:20px; height:20px; flex:none; }
#ao-editorial .ao-social-links a:hover { color:#fff; background:rgba(255,255,255,.1); }
#ao-editorial .ao-social-links a:focus-visible { outline:2px solid var(--beige,#e2d6bd); outline-offset:-3px; }
@media (max-width:400px) {
  #ao-editorial .support-line { padding-left:12px; padding-right:12px; }
  #ao-editorial .support-line>.ao-support-link { font-size:10.5px; letter-spacing:.02em; }
  #ao-editorial .ao-social-links { gap:0; }
}

/* Podcast archive follows the approved reference, without altering single episodes. */
#ao-editorial.ao-view-podcast .platform-row { justify-content:flex-start; }
#ao-editorial.ao-view-podcast .episode-thumb img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
#ao-editorial.ao-view-podcast .episode-row { grid-template-columns:220px minmax(0,1fr) 56px; }
#ao-editorial.ao-view-podcast .episode-row>* { min-width:0; }
#ao-editorial.ao-view-podcast .episode-archive .index-label { color:var(--beige); }
#ao-editorial.ao-view-podcast .episode-archive .index-label span { color:#d1b687; }
#ao-editorial.ao-view-podcast .ao-podcast-search { position:relative; min-width:0; }
#ao-editorial.ao-view-podcast .ao-podcast-search .archive-search { width:100%; min-width:0; }
#ao-editorial.ao-view-podcast .ao-podcast-search input[type=search] { min-width:0; width:100%; padding-right:44px; }
#ao-editorial.ao-view-podcast .ao-podcast-search-submit { position:absolute; right:0; bottom:1px; width:44px; height:46px; padding:0; border:0; background:transparent; color:#fff; cursor:pointer; font-size:18px; }
#ao-editorial.ao-view-podcast .ao-podcast-count { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
#ao-editorial.ao-view-podcast .ao-podcast-active-year { margin-top:24px; color:var(--beige); }
#ao-editorial.ao-view-podcast .ao-podcast-active-year a { text-decoration:underline; }
#ao-editorial.ao-view-podcast .episode-archive :focus-visible,#ao-editorial.ao-view-podcast .podcast-archive-hero :focus-visible { outline:2px solid var(--beige); outline-offset:5px; }
@media(max-width:900px) {
  #ao-editorial.ao-view-podcast .episode-row { grid-template-columns:120px minmax(0,1fr) 44px; }
}
@media(max-width:580px) {
  #ao-editorial.ao-view-podcast .episode-row { grid-template-columns:92px minmax(0,1fr); }
}
@media(max-width:400px) {
  #ao-editorial.ao-view-podcast .podcast-introduction h2 { font-size:42px; }
  #ao-editorial.ao-view-podcast .archive-heading h2 { font-size:46px; line-height:1.12; }
}

/* Explicit description target: a following footnote must not change its style. */
#ao-editorial .product-card-copy>p.product-card-description { max-width:430px; color:rgba(22,29,28,.62); font-size:16px; line-height:1.7; }

/* Reference blog composition; scoped to this view, not podcast or WooCommerce. */
#ao-editorial.ao-view-library .ao-archive { padding:0; }
#ao-editorial.ao-view-library .ao-archive .editorial-grid { padding:90px 6vw 140px; grid-template-columns:repeat(2,minmax(0,1fr)); }
#ao-editorial.ao-view-library .editorial-card { min-width:0; }
#ao-editorial.ao-view-library .editorial-copy h2 { overflow-wrap:anywhere; }
#ao-editorial.ao-view-library .ao-history-feature { margin:0; background:transparent; grid-column:1/-1; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(28px,4vw,72px); align-items:center; padding:0 0 60px; }
#ao-editorial.ao-view-library .ao-history-feature .editorial-image { width:100%; min-height:0; height:clamp(340px,31vw,460px); }
#ao-editorial.ao-view-library .ao-history-feature img { object-position:50% 0%; filter:none; }
#ao-editorial.ao-view-library .ao-results-count { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
#ao-editorial.ao-view-library .archive-tools { display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:24px 40px; }
#ao-editorial.ao-view-library .archive-tools .archive-year { width:220px; min-width:0; }
#ao-editorial.ao-view-library .ao-blog-search { width:370px; max-width:100%; min-width:0; position:relative; margin-left:auto; }
#ao-editorial.ao-view-library .archive-search { min-width:0; }
#ao-editorial.ao-view-library .archive-search input { width:100%; min-width:0; padding-right:44px; }
#ao-editorial.ao-view-library .ao-search-submit { position:absolute; bottom:1px; right:0; width:44px; height:46px; border:0; background:transparent; color:var(--ink); cursor:pointer; font-size:18px; }
#ao-editorial.ao-view-library .archive-tools>.quiet-link { flex-basis:100%; width:fit-content; margin-top:0; border:0; }
#ao-editorial.ao-view-library .archive-pagination { justify-content:flex-start; padding:0 6vw 80px; }
#ao-editorial.ao-view-library .archive-pagination a { min-height:48px; padding:10px 18px; border:1px solid var(--brown); font-size:14px; }
#ao-editorial.ao-view-library .archive-pagination a>span { display:none; }
#ao-editorial.ao-view-library .archive-pagination :focus-visible,#ao-editorial.ao-view-library .ao-search-submit:focus-visible { outline:2px solid var(--brown); outline-offset:4px; }
#ao-editorial.ao-view-library .archive-search input:focus-visible { outline:2px solid var(--brown); outline-offset:4px; }
#ao-editorial:is(.ao-view-library,.ao-view-podcast) footer { gap:28px 50px; }
#ao-editorial:is(.ao-view-library,.ao-view-podcast) footer>div { align-content:start; }
#ao-editorial:is(.ao-view-library,.ao-view-podcast) footer .quiet-link { min-height:30px; padding:0; border:0; }
#ao-editorial:is(.ao-view-library,.ao-view-podcast) footer>p:last-child { margin:0; border:0; padding:0; }

/* One newsletter design on every editorial page and product footer. Preserve
 * MailerLite's required fields, validation, consent gate and submit handlers. */
#ao-editorial #newsletter { align-items:center; scroll-margin-top:100px; }
#ao-editorial #newsletter .newsletter-description { color:var(--ink); }
#ao-editorial #newsletter .ml-form-embedContainer { width:100%; }
#ao-editorial #newsletter .ml-form-embedWrapper { width:100% !important; max-width:100% !important; background:transparent !important; }
#ao-editorial #newsletter .ml-form-embedBody,#ao-editorial #newsletter .ml-form-successBody { padding:0 !important; }
#ao-editorial #newsletter .ml-block-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px 24px; }
#ao-editorial #newsletter .ml-block-form>div { display:block; border:0; width:100%; min-width:0; margin:0; }
#ao-editorial #newsletter .ml-block-form .ml-form-formContent { grid-column:1/-1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin:0; }
#ao-editorial #newsletter .ml-form-fieldRow { min-width:0; margin:0 !important; }
#ao-editorial #newsletter .ml-field-group label { display:block; margin-bottom:5px; font-family:var(--font-sans),sans-serif !important; font-size:14px !important; color:var(--ink) !important; font-weight:400 !important; }
#ao-editorial #newsletter .ml-field-group input { min-height:48px; background:transparent !important; color:var(--ink) !important; font-family:var(--font-sans),sans-serif !important; font-size:16px !important; border:0 !important; border-bottom:1px solid var(--ink) !important; border-radius:0 !important; padding:12px 0 !important; }
#ao-editorial #newsletter .ml-field-group input::placeholder { color:var(--ink) !important; opacity:.85; }
#ao-editorial #newsletter .ml-form-embedPermissions { grid-column:1/-1; grid-row:3; }
#ao-editorial #newsletter .ml-form-embedPermissions p,#ao-editorial #newsletter .ml-form-embedPermissions a { color:var(--ink) !important; font-family:var(--font-sans),sans-serif !important; font-size:12px !important; line-height:1.6 !important; }
#ao-editorial #newsletter .ml-form-embedPermissions a { text-decoration:underline; text-underline-offset:3px; }
#ao-editorial #newsletter .ml-form-embedSubmit { grid-column:2; grid-row:2; text-align:right; }
#ao-editorial #newsletter .ml-form-embedSubmit button { width:auto !important; min-width:140px; min-height:48px; margin-left:auto; padding:10px 0 !important; background:transparent !important; color:var(--ink) !important; border:0 !important; border-bottom:1px solid var(--ink) !important; border-radius:0 !important; font-family:var(--font-sans),sans-serif !important; font-size:16px !important; font-weight:400 !important; }
#ao-editorial #newsletter .ml-form-embedSubmit button.primary::after {
  content:''; display:inline-block; width:1.15em; height:1.15em; margin-left:25px; vertical-align:-.18em;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19 19 5M5 5h14v14'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19 19 5M5 5h14v14'/%3E%3C/svg%3E") center/contain no-repeat;
}
#ao-editorial #newsletter :is(input,button,a):focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
#ao-editorial #newsletter .ml-error input { border-bottom-color:#553e36 !important; outline:2px solid #553e36; outline-offset:2px; }
#ao-editorial #newsletter .ml-form-successContent :is(h4,p) { color:var(--ink) !important; }
#ao-editorial #newsletter .ao-newsletter-fallback { margin:20px 0 0; color:var(--ink); font-size:12px; line-height:1.6; letter-spacing:normal; text-transform:none; }
#ao-editorial #newsletter .ao-newsletter-fallback a { display:inline-flex; align-items:center; min-height:44px; gap:12px; margin-left:6px; text-decoration:underline; text-underline-offset:4px; }
@media (max-width:900px) {
  #ao-editorial.ao-view-library .ao-archive .editorial-grid { padding:70px 24px 95px; grid-template-columns:minmax(0,1fr); gap:60px; }
  #ao-editorial.ao-view-library .ao-history-feature { grid-template-columns:minmax(0,1fr); padding-bottom:40px; }
  #ao-editorial.ao-view-library .ao-history-feature .editorial-image { min-height:0; height:auto; aspect-ratio:4/3; }
  #ao-editorial.ao-view-library .ao-history-feature img { object-position:50% 10%; }
  #ao-editorial.ao-view-library .archive-tools { padding:38px 24px; flex-direction:column; align-items:stretch; }
  #ao-editorial.ao-view-library .archive-tools .archive-year,#ao-editorial.ao-view-library .ao-blog-search { width:100%; margin-left:0; }
  #ao-editorial.ao-view-library .archive-pagination { padding:0 24px 60px; justify-content:space-between; gap:10px; }
  #ao-editorial:is(.ao-view-library,.ao-view-podcast) footer { gap:28px; }
}
@media (max-width:400px) {
  #ao-editorial.ao-view-library .archive-pagination { padding-left:16px; padding-right:16px; font-size:12px; }
  #ao-editorial.ao-view-library .archive-pagination a,#ao-editorial.ao-view-library .archive-pagination button { padding:10px; font-size:12px; }
  #ao-editorial #newsletter .ml-block-form .ml-form-formContent { grid-template-columns:minmax(0,1fr); }
}
