/**
 * News page + each article in the 2026 design (templates/news-v2.php, templates/single-news-v2.php).
 * Design system: /home/asltip/docs/design-system/. Self-contained, prefix nw-. Buttons are plain <a> styled here
 * (Elementor's kit styles <button>).
 */
.nw-page{color:#384048;font-size:17px;background:#f4f9fd}
.nw-wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.nw-page [hidden]{display:none!important} /* class rules must never un-hide something */
.nw-page .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.nw-page .nw-h2{font:700 26px/1.25 'Heebo',sans-serif;color:#00070e;margin:0 0 24px}

/* Buttons */
.nw-page .nw-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#0d7d3f;color:#fff;font:500 12px 'Heebo',sans-serif;letter-spacing:.125em;text-transform:uppercase;text-decoration:none;padding:14px 26px;border-radius:4px;border:2px solid transparent;transition:background .2s ease,color .2s ease}
.nw-page .nw-btn:hover{background:#109e50;color:#fff}
.nw-page .nw-btn svg{width:14px;height:14px}
.nw-page .nw-btn--line{background:transparent;color:#1578cc;border-color:#1578cc}
.nw-page .nw-btn--line:hover{background:#e3eff9;color:#1578cc}
.nw-page .nw-btn--block{display:flex;width:100%}
.nw-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.nw-actions--center{justify-content:center}
.nw-page .nw-hero__alt{color:#cfe4f7;font-size:15px;text-decoration:underline;text-underline-offset:3px}
.nw-page .nw-hero__alt:hover{color:#fff}

/* Hero (split) */
.nw-hero{background:linear-gradient(135deg,#0b2f52 0%,#124a80 62%,#1578cc 130%);color:#fff;padding:56px 0 54px;overflow:hidden}
.nw-hero__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center}
.nw-page .nw-hero__h1{font:700 40px/1.12 'Heebo',sans-serif;color:#fff;margin:0 0 22px;text-wrap:balance}
.nw-page .nw-hero__intro p{font-size:17px;line-height:1.62;color:#dbe9f6;margin:0 0 28px;font-weight:300}
/* Hero image style "speech bubble": the page's photo inside a speech bubble like the ASLTIP logo's, a green outline
   bubble behind, two chat-bubble labels. Kept compact (400px) so the hero stays short. */
.nw-bubble{position:relative;max-width:400px;width:100%;margin:0 0 0 auto}
.nw-bubble__photo{position:relative;z-index:2;filter:drop-shadow(0 18px 36px rgba(2,12,22,.45))}
.nw-bubble__img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;clip-path:url(#nwBubbleClip)}
.nw-bubble__back{position:absolute;z-index:1;width:44%;aspect-ratio:1.2;right:-22px;top:-26px;border:3px solid #1acd6a;border-radius:46% 46% 46% 12%;opacity:.8}
.nw-bubble__m1,.nw-bubble__m2{position:absolute;z-index:3;font:600 14px 'Heebo',sans-serif;padding:10px 16px;box-shadow:0 10px 26px rgba(4,26,46,.25);white-space:nowrap}
.nw-bubble__m1{left:-20px;top:30px;background:#fff;color:#0b2f52;border-radius:18px 18px 18px 4px}
.nw-bubble__m2{right:-12px;bottom:62px;background:#1578cc;color:#fff;border-radius:18px 18px 4px 18px}
/* Hero (plain, with breadcrumb) - an article */
.nw-hero--plain{padding:52px 0 50px}
.nw-page .nw-crumb{margin:0 0 14px;font-size:14px;color:#cfe4f7}
.nw-page .nw-crumb a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.nw-hero--plain .nw-hero__h1{max-width:920px;margin-bottom:16px}
.nw-hero__chips{display:flex;flex-wrap:wrap;gap:8px}
.nw-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.12);color:#eaf4fd;border:1px solid rgba(255,255,255,.25);font:600 13px 'Heebo',sans-serif}
.nw-chip svg{width:14px;height:14px}

/* The list */
.nw-list{padding:56px 0 70px}
.nw-search{position:relative;max-width:560px;margin:0 0 36px;display:flex;align-items:center;gap:10px}
.nw-search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#5b6876}
.nw-page .nw-search input{flex:1;width:100%;height:auto;min-height:0;margin:0;padding:14px 18px 14px 46px;border:1.5px solid #cbdeef;border-radius:999px;background:#fff;font:400 16px 'Heebo',sans-serif;color:#00070e;box-shadow:none}
.nw-page .nw-search input:focus{outline:2px solid #1578cc;outline-offset:2px;border-color:#1578cc}
.nw-page .nw-search__clear{font-size:14.5px;color:#1578cc;white-space:nowrap}
/* featured (newest) article */
.nw-feature{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);background:#fff;border:1px solid #e3ebf2;border-radius:18px;overflow:hidden;box-shadow:0 6px 20px rgba(4,26,46,.07);margin:0 0 56px}
.nw-feature__media{display:block;background:#0b2f52;min-height:300px}
.nw-feature__img{display:block;width:100%;height:100%;object-fit:cover}
.nw-feature__body{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:36px 40px}
.nw-feature__k{font:700 12px 'Heebo',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#0d7d3f}
.nw-page .nw-feature__title{font:700 28px/1.2 'Heebo',sans-serif;color:#00070e;margin:0;text-wrap:balance}
.nw-page .nw-feature__title a{color:inherit;text-decoration:none}
.nw-page .nw-feature__title a:hover{color:#1578cc}
.nw-page .nw-feature__text{font-size:16.5px;line-height:1.6;color:#46586a;margin:0 0 6px}
/* cards */
.nw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:26px}
.nw-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e3ebf2;border-radius:16px;overflow:hidden;box-shadow:0 4px 14px rgba(4,26,46,.06);transition:transform .2s ease,box-shadow .2s ease}
.nw-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(4,26,46,.14)}
.nw-card__media{display:block;aspect-ratio:16/10;background:#0b2f52;overflow:hidden}
.nw-card__img{display:block;width:100%;height:100%;object-fit:cover}
.nw-card__blank{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:200px;background:linear-gradient(135deg,#0b2f52 0%,#124a80 62%,#1578cc 130%);color:rgba(255,255,255,.55)}
.nw-card__blank svg{width:44px;height:44px}
.nw-card__body{display:flex;flex:1;flex-direction:column;gap:10px;padding:18px 22px 24px}
.nw-page .nw-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0;font:500 13.5px 'Heebo',sans-serif;color:#5b6876}
.nw-card__cat{padding:3px 10px;border-radius:999px;background:#e3eff9;color:#12507f;font-weight:600;font-size:12.5px}
.nw-page .nw-card__title{font:700 18px/1.35 'Heebo',sans-serif;color:#00070e;margin:0}
.nw-page .nw-card__title a{color:inherit;text-decoration:none}
.nw-page .nw-card__title a:hover{color:#1578cc}
.nw-page .nw-card__text{font-size:15px;line-height:1.55;color:#46586a;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nw-more{margin-top:36px}
.nw-empty{max-width:560px;text-align:left;display:flex;gap:14px;align-items:center;background:#fff;border:1px solid #e3ebf2;border-radius:14px;padding:18px 20px}
.nw-empty__icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#e3eff9;color:#1578cc;flex:0 0 auto}
.nw-empty__icon svg{width:20px;height:20px}
.nw-page .nw-empty p{margin:0;font-size:16px;color:#46586a}
.nw-page .nw-empty a{color:#1578cc}
.nw-list--more{padding-top:10px}

/* An article */
.nw-detail{padding:52px 0 40px}
.nw-detail__grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:72px;align-items:start}
.nw-detail__body{min-width:0;max-width:800px}
.nw-figure{margin:0 0 30px}
.nw-figure__img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover;border-radius:16px}
.nw-notice{display:flex;gap:12px;align-items:flex-start;margin:0 0 26px;padding:14px 16px;border-radius:12px;background:#fdf0dc;border:1px solid #f3d29a;color:#5c3a00}
.nw-notice svg{flex:0 0 auto;width:20px;height:20px;margin-top:2px}
.nw-page .nw-notice p{margin:0;font-size:15px;line-height:1.5;color:#5c3a00}
.nw-page .nw-notice a{color:#5c3a00;font-weight:700}
.nw-page .nw-prose{font-size:17px;line-height:1.75;color:#384048;overflow-wrap:anywhere}
.nw-page .nw-prose > :first-child{margin-top:0}
.nw-page .nw-prose > :last-child{margin-bottom:0}
.nw-page .nw-prose p{margin:0 0 16px;font-size:17px;line-height:1.75;color:#384048}
.nw-page .nw-prose h1,.nw-page .nw-prose h2,.nw-page .nw-prose h3,.nw-page .nw-prose h4{font-family:'Heebo',sans-serif;color:#00070e;margin:30px 0 12px;line-height:1.3;font-weight:700}
.nw-page .nw-prose h1,.nw-page .nw-prose h2{font-size:24px}.nw-page .nw-prose h3{font-size:20px}.nw-page .nw-prose h4{font-size:18px}
.nw-page .nw-prose ul,.nw-page .nw-prose ol{margin:0 0 16px;padding-left:24px}
.nw-page .nw-prose ul{list-style:disc}
.nw-page .nw-prose ol{list-style:decimal}
.nw-page .nw-prose li{margin:0 0 6px;padding:0;font-size:17px;line-height:1.65;color:#384048}
.nw-page .nw-prose li::before{display:none}
.nw-page .nw-prose a{color:#1578cc}
.nw-page .nw-prose strong,.nw-page .nw-prose b{color:#00070e}
.nw-page .nw-prose blockquote{margin:24px 0;padding:0 0 0 24px;color:#46586a;font-style:italic;font-size:18px} /* indented, no coloured left border */
.nw-page .nw-prose img{max-width:100%;height:auto;border-radius:12px}
.nw-page .nw-prose .alignleft{float:left;margin:4px 24px 14px 0;max-width:50%}
.nw-page .nw-prose .alignright{float:right;margin:4px 0 14px 24px;max-width:50%}
.nw-page .nw-prose .aligncenter{display:block;margin:0 auto 16px}
.nw-page .nw-prose figure{margin:0 0 18px;max-width:100%}
.nw-page .nw-prose figcaption,.nw-page .nw-prose .wp-caption-text{font-size:14px;color:#5b6876;margin-top:6px}
.nw-page .nw-prose .wp-caption{max-width:100%}
.nw-page .nw-prose iframe,.nw-page .nw-prose video{max-width:100%}
.nw-page .nw-prose iframe[src*="youtube"],.nw-page .nw-prose iframe[src*="vimeo"]{width:100%;height:auto;aspect-ratio:16/9;border:0;border-radius:12px}
.nw-page .nw-prose table{width:100%;border-collapse:collapse;margin:0 0 18px;font-size:15.5px;display:block;overflow-x:auto}
.nw-page .nw-prose th,.nw-page .nw-prose td{border:1px solid #e3ebf2;padding:8px 10px;text-align:left}
.nw-page .nw-prose::after{content:"";display:block;clear:both}
.nw-side{display:flex;flex-direction:column;gap:20px} /* a stack of cards - too tall to stick */
.nw-side__card{background:#fff;border:1px solid #e3ebf2;border-radius:16px;padding:22px;box-shadow:0 4px 14px rgba(4,26,46,.06);display:flex;flex-direction:column;gap:16px}
.nw-side__facts{margin:0;display:grid;gap:10px}
.nw-side__facts div{display:flex;justify-content:space-between;gap:12px;font-size:15px;border-bottom:1px solid #eef2f6;padding-bottom:10px}
.nw-side__facts dt{color:#5b6876}
.nw-side__facts dd{margin:0;font-weight:600;color:#00070e;text-align:right}
.nw-share__k{display:block;font:700 12px 'Heebo',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#5b6876;margin-bottom:8px}
.nw-share__row{display:flex;flex-wrap:wrap;gap:6px}
.nw-page .nw-share__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:40px;height:40px;padding:0 11px;border-radius:10px;border:1.5px solid #cbdeef;background:#fff;color:#12507f;font:600 14px 'Heebo',sans-serif;text-decoration:none}
.nw-page .nw-share__btn:hover{border-color:#1578cc;color:#1578cc}
.nw-share__btn svg{width:17px;height:17px}

/* sidebar cards under the details card */
.nw-page .nw-side__h{font:700 17px/1.3 'Heebo',sans-serif;color:#00070e;margin:0}
.nw-page .nw-side__more{font-size:14.5px;color:#1578cc;text-decoration:underline;text-underline-offset:3px}
.nw-find{background:linear-gradient(135deg,#0b2f52 0%,#124a80 62%,#1578cc 130%);border-color:#0b2f52;gap:12px}
.nw-page .nw-find .nw-side__h{color:#fff}
.nw-page .nw-find__sub{margin:0;font-size:14.5px;line-height:1.5;color:#dbe9f6}
.nw-find__form{display:flex;gap:8px;margin-top:4px} /* 16px below the text, as on the other cards */
.nw-page .nw-find__input{flex:1;min-width:0;width:auto;height:auto;margin:0;padding:12px 14px;border:0;border-radius:8px;background:#fff;font:400 15.5px 'Heebo',sans-serif;color:#00070e;box-shadow:none}
.nw-page .nw-find__input:focus{outline:2px solid #9ecbf0;outline-offset:1px}
.nw-page .nw-find .nw-find__btn{flex:0 0 auto;margin:0;padding:0 18px;border:0;border-radius:8px;background:#0d7d3f;color:#fff;font:600 13px 'Heebo',sans-serif;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;height:auto;min-height:44px}
.nw-page .nw-find .nw-find__btn:hover{background:#109e50}
.nw-page .nw-find__alt{font-size:14px;color:#cfe4f7;text-decoration:underline;text-underline-offset:3px}
.nw-page .nw-find__alt:hover{color:#fff}
.nw-page .nw-event{display:flex;gap:14px;align-items:flex-start;text-decoration:none}
.nw-event__date{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:58px;height:62px;border-radius:10px;background:linear-gradient(135deg,#0b2f52 0%,#124a80 70%,#1578cc 140%);color:#fff;line-height:1}
.nw-event__m{font:700 11px 'Heebo',sans-serif;letter-spacing:.12em;text-transform:uppercase}
.nw-event__d{font:700 24px/1.05 'Heebo',sans-serif;margin-top:3px}
.nw-event__text{display:flex;flex-direction:column;gap:4px;min-width:0}
.nw-event__title{font:700 15.5px/1.35 'Heebo',sans-serif;color:#00070e}
.nw-page .nw-event:hover .nw-event__title{color:#1578cc}
.nw-event__meta{font-size:13.5px;color:#5b6876}
.nw-event__mo{align-self:flex-start;padding:2px 9px;border-radius:999px;background:#fdf0dc;color:#7a4b00;font:600 12px 'Heebo',sans-serif}
/* Join card (visitors): Therapy Talks audience photo with the heading on it, then a line and the button */
.nw-side__card.nw-join{padding:0;overflow:hidden;gap:0}
.nw-join__photo{position:relative;aspect-ratio:16/6.5;background:#0b2f52} /* two thirds of the old height: the ceiling added nothing (Dylan) */
.nw-join__img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center 72%} /* absolute, or the image's own height overrides the box's ratio */
.nw-join__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,32,56,.15) 0%,rgba(6,32,56,.85) 100%)}
.nw-page .nw-join__h{position:absolute;z-index:1;left:20px;right:20px;bottom:12px;margin:0;font:700 18px/1.3 'Heebo',sans-serif;color:#fff}
.nw-join__body{display:flex;flex-direction:column;gap:14px;padding:18px 22px 22px}
.nw-page .nw-join__sub{margin:0;font-size:14.5px;line-height:1.5;color:#46586a}
.nw-join .nw-side__more{text-align:center}

/* Photo band */
.nw-final{padding:88px 0 96px;text-align:center;background:linear-gradient(180deg,rgba(6,32,56,.80) 0%,rgba(6,32,56,.64) 100%),url('https://asltip.com/wp-content/uploads/01-0-16-1536x1024.jpg') center / cover no-repeat}
.nw-page .nw-final__h2{font:700 30px 'Heebo',sans-serif;color:#fff;margin:0 0 10px}
.nw-page .nw-final__sub{font-size:17px;line-height:1.55;color:#dbe9f6;margin:0 auto;max-width:600px}
.nw-final .nw-actions{margin-top:26px}

@media (max-width:980px){
  .nw-detail__grid{grid-template-columns:1fr;gap:40px}
  .nw-side{position:static}
  .nw-feature{grid-template-columns:1fr}
  .nw-feature__media{min-height:0;aspect-ratio:16/9}
}
@media (max-width:820px){
  .nw-hero{padding:52px 0 60px}
  .nw-hero__grid{grid-template-columns:1fr;gap:40px}
  .nw-page .nw-hero__h1{font-size:32px}
  .nw-bubble{margin:0 auto;max-width:360px}
  .nw-page .nw-final__h2{font-size:25px}
  .nw-feature__body{padding:26px 22px}
  .nw-page .nw-feature__title{font-size:23px}
}
@media (max-width:640px){
  .nw-wrap{padding:0 16px}
  .nw-grid{grid-template-columns:1fr}
  .nw-bubble{max-width:calc(100% - 40px)} /* the labels sit outside the bubble - keep them on screen */
  .nw-bubble__m1,.nw-bubble__m2{font-size:12.5px;padding:8px 12px}
  .nw-page .nw-btn{width:100%}
  .nw-page .nw-prose .alignleft,.nw-page .nw-prose .alignright{float:none;margin:0 0 14px;max-width:100%}
}
@media (prefers-reduced-motion:reduce){.nw-card{transition:none}}

/* Phones: tighter spacing and a shorter hero so the first screen shows more than the hero (Dylan, 14 Oct 2026).
   Desktop is unchanged. Sections 70 -> 48px, hero padding 40/44, hero image smaller. */
@media (max-width:640px){
  .nw-hero{padding:40px 0 44px}
  .nw-hero--plain{padding:36px 0 38px}
  .nw-hero__grid{gap:28px}
  .nw-list{padding:40px 0 48px}
  .nw-list--more{padding-top:8px}
  .nw-detail{padding:32px 0 36px}
  .nw-feature{margin-bottom:40px}
  .nw-final{padding:60px 0 64px}
  .nw-bubble{max-width:250px}
}
