:root{
  --night:#12091d;
  --night-2:#1b0f2b;
  --night-3:#2a1740;
  --plum:#5e3478;
  --violet:#8a63d2;
  --violet-soft:#d9c8f1;
  --mint:#64c8aa;
  --mint-deep:#167866;
  --mint-soft:#e0f5ef;
  --amber:#ffb83e;
  --amber-soft:#ffe4a8;
  --rose:#f3a8b8;
  --paper:#fffdf9;
  --cream:#f7f2eb;
  --cream-2:#eee4d8;
  --ink:#1d1622;
  --muted:#6f6672;
  --line:rgba(31,19,39,.13);
  --line-light:rgba(255,255,255,.16);
  --white:#fff;
  --container:1360px;
  --reading:760px;
  --radius-xs:14px;
  --radius-sm:22px;
  --radius-md:34px;
  --radius-lg:56px;
  --shadow-sm:0 16px 40px rgba(23,12,31,.09);
  --shadow-md:0 30px 80px rgba(23,12,31,.16);
  --shadow-lg:0 55px 140px rgba(12,5,18,.28);
  --ease:cubic-bezier(.2,.72,.2,1);
  --section-pad:clamp(88px,9vw,156px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;min-width:320px;overflow-x:hidden;background:var(--paper);color:var(--ink);font-family:"Outfit",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
main{display:block;overflow:clip}
a{color:inherit;text-decoration:none}
a,button,input,select,textarea{font:inherit}
input,select,textarea{max-width:100%}
button{color:inherit}
img{display:block;max-width:100%;height:auto}
figure{margin:0}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3,h4{color:var(--ink);font-weight:750;line-height:.96;letter-spacing:-.055em;text-wrap:balance;overflow-wrap:anywhere}
h1{font-size:clamp(3.6rem,8vw,8.7rem)}
h2{font-size:clamp(2.45rem,5.6vw,5.7rem)}
h3{font-size:clamp(1.45rem,2.4vw,2.45rem)}
p{color:var(--muted)}
.container{width:min(var(--container),calc(100% - 72px));margin-inline:auto;min-width:0}
.container>*{min-width:0}
.section-space{padding:var(--section-pad) 0}
.section-tight{padding:clamp(74px,7vw,112px) 0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.dls-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.skip-link{position:fixed;left:16px;top:-100px;z-index:10000;background:var(--night);color:#fff;padding:12px 18px;border-radius:999px;font-weight:700;transition:top .2s}
.skip-link:focus{top:16px}
:focus-visible{outline:3px solid var(--amber);outline-offset:4px}
::selection{background:var(--amber-soft);color:var(--night)}

/* ---------- Shared design language ---------- */
.eyebrow{display:inline-flex;align-items:center;gap:13px;margin-bottom:20px;color:var(--mint-deep);font-size:.74rem;font-weight:800;letter-spacing:.19em;text-transform:uppercase}
.eyebrow:before{content:"";width:42px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--amber),var(--rose))}
.eyebrow-light{color:rgba(255,255,255,.8)}
.story-category{display:inline-flex;align-items:center;gap:8px;color:var(--mint-deep);font-size:.7rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.story-category:before{content:"";width:18px;height:1px;background:currentColor}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 28px;border:1px solid transparent;border-radius:999px;font-weight:750;letter-spacing:-.01em;cursor:pointer;overflow:hidden;isolation:isolate;transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s,color .3s,border-color .3s}
.btn:after{content:"";position:absolute;inset:0;z-index:-1;transform:translateX(-105%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);transition:transform .65s var(--ease)}
.btn:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(17,8,24,.18)}
.btn:hover:after{transform:translateX(105%)}
.btn-primary{background:var(--night);color:#fff}
.btn-primary:hover{background:var(--plum)}
.btn-light{background:#fff;color:var(--night);border-color:var(--line);box-shadow:var(--shadow-sm)}
.btn-amber{background:var(--amber);color:var(--night);box-shadow:0 18px 50px rgba(255,184,62,.24)}
.btn-glass{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.24);backdrop-filter:blur(14px)}
.arrow-link{display:inline-flex;align-items:center;gap:10px;color:var(--plum);font-weight:750;transition:gap .25s var(--ease),color .25s}
.arrow-link:after{content:"↗";font-size:1.06em}
.arrow-link:hover{gap:16px;color:var(--mint-deep)}
.arrow-link-light{color:#fff}
.arrow-link-light:hover{color:var(--amber)}
.arrow-link-back:after{display:none}
.section-heading{margin-bottom:clamp(48px,6vw,86px)}
.split-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.68fr);gap:clamp(36px,7vw,110px);align-items:end}
.split-heading h2{max-width:900px}
.split-heading p{justify-self:end;max-width:480px;margin:0;font-size:clamp(1.04rem,1.5vw,1.2rem);line-height:1.65}
.compact-heading{display:flex;align-items:end;justify-content:space-between;gap:36px}
.compact-heading>div{min-width:0}
.compact-heading h2{font-size:clamp(2.3rem,4.7vw,4.9rem)}
.section-action{display:flex;justify-content:center;margin-top:56px}
.information-notice{padding:20px 22px;border-left:3px solid var(--amber);background:rgba(255,255,255,.58);color:#554c59;font-size:.94rem;line-height:1.65;backdrop-filter:blur(14px);overflow-wrap:anywhere}
.editorial-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:180px;background:linear-gradient(135deg,var(--violet-soft),var(--mint-soft));color:var(--night)}
.js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .85s var(--ease),transform .85s var(--ease)}
.js [data-reveal][data-delay="1"]{transition-delay:.12s}
.js [data-reveal].is-visible{opacity:1;transform:none}

/* ---------- Floating premium navigation ---------- */
.site-header{position:sticky;top:0;z-index:1000;padding:14px 0;background:rgba(255,253,249,.74);border-bottom:1px solid rgba(29,22,34,.06);backdrop-filter:blur(24px) saturate(150%);transition:padding .3s,background .3s,box-shadow .3s,border-color .3s}
.site-header.is-scrolled{padding:8px 0;background:rgba(255,253,249,.93);box-shadow:0 16px 50px rgba(26,12,35,.09);border-color:rgba(29,22,34,.1)}
.home .site-header{position:fixed;left:0;right:0}.home .site-header:not(.is-scrolled){background:transparent;border-color:transparent;color:#fff}
.admin-bar .site-header{top:32px}
.home.admin-bar .site-header{top:32px}
.nav-shell{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 12px 0 14px;border:1px solid rgba(29,22,34,.08);border-radius:999px;background:rgba(255,255,255,.7);box-shadow:0 15px 45px rgba(25,12,34,.07)}
.home .site-header:not(.is-scrolled) .nav-shell{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.15);box-shadow:none;backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;gap:12px;min-width:max-content}
.brand-mark{position:relative;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#fff;box-shadow:0 8px 22px rgba(26,12,35,.14)}
.brand-mark:after{content:"";position:absolute;inset:-4px;border:1px solid rgba(138,99,210,.28);border-radius:50%}
.brand img{width:39px;height:39px;object-fit:contain;border-radius:50%}
.brand-copy{display:grid;line-height:1}
.brand-copy b{font-size:.98rem;letter-spacing:-.02em}
.brand-copy small{margin-top:6px;color:var(--muted);font-size:.66rem;font-weight:600;letter-spacing:.02em}
.home .site-header:not(.is-scrolled) .brand-copy b{color:#fff}
.home .site-header:not(.is-scrolled) .brand-copy small{color:rgba(255,255,255,.66)}
.main-nav{display:flex;align-items:center;gap:14px}
.main-nav-links{display:flex;align-items:center;gap:0}
.nav-link{position:relative;padding:10px 9px;color:#514956;font-size:.78rem;font-weight:650;white-space:nowrap}
.nav-link:after{content:"";position:absolute;left:9px;right:9px;bottom:5px;height:2px;border-radius:999px;transform:scaleX(0);transform-origin:right;background:linear-gradient(90deg,var(--violet),var(--mint));transition:transform .3s var(--ease)}
.nav-link:hover:after,.nav-link.active:after{transform:scaleX(1);transform-origin:left}
.nav-link.active{color:var(--night)}
.home .site-header:not(.is-scrolled) .nav-link{color:rgba(255,255,255,.76)}
.home .site-header:not(.is-scrolled) .nav-link:hover,.home .site-header:not(.is-scrolled) .nav-link.active{color:#fff}
.subscribe-pill{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border-radius:999px;background:var(--night);color:#fff;font-size:.8rem;font-weight:750;box-shadow:0 10px 30px rgba(18,9,29,.18);transition:transform .25s,background .25s}
.home .site-header:not(.is-scrolled) .subscribe-pill{background:var(--amber);color:var(--night)}
.subscribe-pill:hover{transform:translateY(-2px);background:var(--plum)}
.menu-toggle{display:none;width:48px;height:48px;border:0;border-radius:50%;background:var(--night);align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
.menu-toggle i{display:block;width:20px;height:2px;border-radius:999px;background:#fff;transition:transform .25s,opacity .25s}
.menu-toggle[aria-expanded="true"] i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] i:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- Hero: immersive editorial gallery ---------- */
.premium-hero{
  position:relative;
  min-height:960px;
  display:flex;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 78% 22%,rgba(100,200,170,.27),transparent 25%),
    radial-gradient(circle at 12% 18%,rgba(138,99,210,.34),transparent 28%),
    radial-gradient(circle at 66% 92%,rgba(255,184,62,.15),transparent 26%),
    linear-gradient(132deg,#0d0716 0%,#1d0d2d 50%,#123039 100%);
  border-radius:0 0 72px 72px;
}
.premium-hero:after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
}
.hero-ambient{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.hero-ambient span{position:absolute;border-radius:50%;filter:blur(1px);opacity:.9}
.hero-ambient span:nth-child(1){width:54vw;height:54vw;left:-26vw;top:-28vw;background:radial-gradient(circle,rgba(138,99,210,.4),transparent 68%)}
.hero-ambient span:nth-child(2){width:44vw;height:44vw;right:-18vw;top:-12vw;background:radial-gradient(circle,rgba(100,200,170,.34),transparent 68%)}
.hero-ambient span:nth-child(3){width:34vw;height:34vw;left:40%;bottom:-22vw;background:radial-gradient(circle,rgba(255,184,62,.22),transparent 70%)}
.hero-weave{position:absolute;inset:0;opacity:.18;pointer-events:none;background-image:
  linear-gradient(rgba(255,255,255,.11) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.11) 1px,transparent 1px),
  radial-gradient(circle,rgba(255,255,255,.32) 1px,transparent 1.5px);
  background-size:88px 88px,88px 88px,22px 22px;
  mask-image:linear-gradient(120deg,rgba(0,0,0,.85),rgba(0,0,0,.18) 62%,transparent 92%);
}
.home-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);gap:clamp(54px,7vw,112px);align-items:center;padding-top:158px;padding-bottom:126px}
.home-hero-copy{min-width:0;max-width:760px}
.home-hero-copy h1{margin:0 0 28px;color:#fff;font-size:clamp(5.1rem,9.6vw,9.9rem);font-weight:780;line-height:.79;letter-spacing:-.078em;text-shadow:0 20px 80px rgba(0,0,0,.22)}
.hero-copy-rule{display:flex;gap:8px;width:min(420px,74%);height:8px;margin:0 0 26px}
.hero-copy-rule i{display:block;flex:1;border-radius:999px;background:#fff}
.hero-copy-rule i:nth-child(1){background:#f3a8b8}.hero-copy-rule i:nth-child(2){background:#ffb83e}.hero-copy-rule i:nth-child(3){background:#64c8aa}.hero-copy-rule i:nth-child(4){background:#8a63d2}.hero-copy-rule i:nth-child(5){background:#4ba2d7}
.hero-location{margin:0 0 16px;color:var(--mint);font-size:clamp(1.02rem,1.5vw,1.28rem);font-weight:720;letter-spacing:-.02em}
.hero-statement{max-width:680px;margin:0;color:rgba(255,255,255,.76);font-size:clamp(1.11rem,1.65vw,1.4rem);line-height:1.6}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}
.hero-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:38px;border-top:1px solid rgba(255,255,255,.18);max-width:740px}
.hero-links a{position:relative;min-width:0;padding:17px 28px 17px 0;border-bottom:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.72);font-size:.84rem;font-weight:680;white-space:nowrap;transition:color .25s,padding-left .25s}
.hero-links a:not(:last-child){margin-right:18px}
.hero-links a:after{content:"↗";position:absolute;right:3px;color:var(--amber);transition:transform .25s}
.hero-links a:hover{padding-left:6px;color:#fff}.hero-links a:hover:after{transform:translate(3px,-3px)}
.hero-visual{position:relative;min-width:0;display:grid;place-items:center}
.hero-gallery{position:relative;width:min(760px,50vw);aspect-ratio:1.04;isolation:isolate;transform-style:preserve-3d;transition:transform .32s var(--ease)}
.hero-gallery-surface{position:absolute;inset:5% 1% 3% 4%;border:1px solid rgba(255,255,255,.18);border-radius:68px 34px 68px 34px;background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.035));box-shadow:inset 0 1px rgba(255,255,255,.3),0 60px 150px rgba(0,0,0,.34);backdrop-filter:blur(22px);transform:rotate(-2.5deg)}
.hero-gallery-surface:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.1);border-radius:54px 24px 54px 24px}
.hero-gallery-rings{position:absolute;left:50%;top:50%;width:72%;aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none}
.hero-gallery-rings i{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(255,255,255,.17)}
.hero-gallery-rings i:nth-child(2){inset:12%;border-style:dashed;border-color:rgba(100,200,170,.29);animation:slowSpin 25s linear infinite}
.hero-gallery-rings i:nth-child(3){inset:26%;border-color:rgba(255,184,62,.28);animation:slowSpin 18s linear infinite reverse}
.hero-gallery-art{position:absolute;z-index:3;overflow:hidden;border:1px solid rgba(255,255,255,.24);background:#fff;box-shadow:0 28px 75px rgba(0,0,0,.32);backdrop-filter:blur(12px)}
.hero-gallery-art img{width:100%;height:100%;object-fit:cover}
.hero-gallery-art-a{left:2%;top:11%;width:24%;aspect-ratio:.92;border-radius:28px;transform:rotate(-8deg) translateZ(30px)}
.hero-gallery-art-b{right:1%;top:6%;width:27%;aspect-ratio:.76;border-radius:30px;transform:rotate(7deg) translateZ(26px)}
.hero-gallery-art-c{right:4%;bottom:5%;width:27%;aspect-ratio:.78;border-radius:30px;transform:rotate(-5deg) translateZ(32px)}
.hero-gallery-art-d{left:5%;bottom:8%;width:25%;aspect-ratio:1.12;border-radius:28px;transform:rotate(6deg) translateZ(24px)}
.hero-logo-stage{position:absolute;left:50%;top:50%;z-index:6;width:min(390px,52%);aspect-ratio:1;transform:translate(-50%,-50%) translateZ(64px);display:grid;place-items:center;padding:26px;border-radius:50%;background:rgba(255,255,255,.96);box-shadow:0 58px 140px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.95);backdrop-filter:blur(24px)}
.hero-logo-stage:before{content:"";position:absolute;inset:-16px;border-radius:50%;border:1px solid rgba(255,255,255,.34);box-shadow:0 0 0 12px rgba(255,255,255,.035),0 0 0 26px rgba(100,200,170,.035)}
.hero-logo-stage img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;border-radius:50%}
.hero-logo-glow{position:absolute;inset:-12%;border-radius:50%;background:conic-gradient(from 180deg,rgba(138,99,210,.46),rgba(100,200,170,.42),rgba(255,184,62,.42),rgba(243,168,184,.4),rgba(138,99,210,.46));filter:blur(28px);opacity:.72;z-index:-1;animation:slowSpin 22s linear infinite}
.hero-spectrum{position:absolute;left:13%;right:13%;bottom:1%;z-index:7;display:grid;grid-template-columns:repeat(6,1fr);gap:8px;transform:translateZ(48px)}
.hero-spectrum i{height:8px;border-radius:999px;background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.hero-spectrum i:nth-child(1){background:#f3a8b8}.hero-spectrum i:nth-child(2){background:#ffb83e}.hero-spectrum i:nth-child(3){background:#64c8aa}.hero-spectrum i:nth-child(4){background:#8a63d2}.hero-spectrum i:nth-child(5){background:#4ba2d7}.hero-spectrum i:nth-child(6){background:#ef6f61}
.hero-scroll-cue{position:absolute;left:50%;bottom:30px;z-index:5;width:44px;height:66px;display:grid;place-items:start center;padding-top:10px;border:1px solid rgba(255,255,255,.24);border-radius:999px;transform:translateX(-50%)}
.hero-scroll-cue span{width:5px;height:10px;border-radius:999px;background:var(--amber);animation:scrollCue 1.8s ease-in-out infinite}

/* ---------- Welcome: layered story composition ---------- */
.welcome-stage{position:relative;overflow:hidden;padding:clamp(110px,11vw,178px) 0;background:linear-gradient(180deg,#fffdf9 0%,#f4ede5 100%)}
.welcome-stage:before{content:"";position:absolute;inset:0;opacity:.4;background-image:radial-gradient(circle at 1px 1px,rgba(94,52,120,.11) 1px,transparent 0);background-size:26px 26px;mask-image:linear-gradient(90deg,rgba(0,0,0,.55),transparent 62%)}
.welcome-glow{position:absolute;border-radius:50%;pointer-events:none}
.welcome-glow-a{left:-12vw;top:8%;width:38vw;height:38vw;background:radial-gradient(circle,rgba(138,99,210,.18),transparent 68%)}
.welcome-glow-b{right:-10vw;bottom:-16%;width:34vw;height:34vw;background:radial-gradient(circle,rgba(100,200,170,.2),transparent 68%)}
.welcome-watermark{position:absolute;right:-2vw;bottom:-.18em;color:rgba(94,52,120,.04);font-size:clamp(8rem,19vw,21rem);font-weight:800;line-height:.8;letter-spacing:-.08em;white-space:nowrap;pointer-events:none}
.welcome-layout{position:relative;display:grid;grid-template-columns:150px minmax(0,1fr);gap:clamp(42px,7vw,110px);align-items:start}
.section-index{position:sticky;top:130px;padding-top:20px;border-top:1px solid var(--line);color:var(--plum);font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.section-index span{display:flex;align-items:center;gap:12px}.section-index span:before{content:"01";display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--night);color:#fff;letter-spacing:0}
.welcome-composition{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(380px,.78fr);gap:clamp(32px,5vw,74px);align-items:center;min-width:0}
.welcome-heading-panel{position:relative;min-height:720px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:clamp(42px,5vw,72px);border-radius:62px 24px 62px 24px;background:linear-gradient(145deg,#180b25 0%,#2c1742 55%,#15353b 100%);box-shadow:var(--shadow-lg);isolation:isolate}
.welcome-heading-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 22% 18%,rgba(138,99,210,.32),transparent 28%),radial-gradient(circle at 84% 78%,rgba(100,200,170,.25),transparent 30%);z-index:-1}
.welcome-heading-panel:after{content:"";position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:62px 62px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 84%);z-index:-1}
.welcome-heading-panel h2{position:relative;z-index:2;max-width:820px;margin:0;color:#fff;font-size:clamp(3.45rem,6vw,6.55rem);line-height:.92;letter-spacing:-.064em}
.welcome-visual{position:relative;align-self:flex-end;width:min(520px,100%);height:310px;margin-top:48px}
.welcome-visual-orbit{position:absolute;right:5%;bottom:-34%;width:320px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 0 38px rgba(255,255,255,.035),0 0 0 76px rgba(100,200,170,.025)}
.welcome-visual-logo{position:absolute;right:8%;bottom:-10%;z-index:4;width:205px;aspect-ratio:1;display:grid;place-items:center;padding:14px;border-radius:50%;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.32)}
.welcome-visual-logo img{width:100%;height:100%;object-fit:contain;border-radius:50%}
.welcome-visual-note,.welcome-visual-anvil{position:absolute;overflow:hidden;border:1px solid rgba(255,255,255,.22);background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.28)}
.welcome-visual-note{left:1%;bottom:12%;width:180px;height:210px;border-radius:28px;transform:rotate(-7deg)}
.welcome-visual-anvil{left:32%;bottom:0;width:170px;height:150px;border-radius:26px;transform:rotate(5deg)}
.welcome-visual-note img,.welcome-visual-anvil img{width:100%;height:100%;object-fit:cover}
.welcome-letter{position:relative;margin-left:-86px;padding:clamp(42px,5vw,70px);border:1px solid rgba(29,22,34,.08);border-radius:34px;background:rgba(255,255,255,.91);box-shadow:0 34px 90px rgba(30,15,39,.16);backdrop-filter:blur(20px);z-index:4}
.welcome-letter:before{content:"";position:absolute;inset:16px;border:1px solid rgba(94,52,120,.08);border-radius:24px;pointer-events:none}
.welcome-letter-accent{position:absolute;left:clamp(42px,5vw,70px);right:clamp(42px,5vw,70px);top:0;height:5px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,#f3a8b8,#ffb83e,#64c8aa,#8a63d2,#4ba2d7)}
.welcome-prose{position:relative;z-index:2}
.welcome-prose p{font-size:clamp(1.02rem,1.15vw,1.16rem);line-height:1.82;color:#504754}
.welcome-prose p:first-child{font-size:clamp(1.2rem,1.55vw,1.42rem);line-height:1.66;color:var(--night);font-weight:560}
.welcome-prose p:first-child:first-letter{float:left;margin:.08em .12em 0 0;color:var(--plum);font-size:4.7em;font-weight:780;line-height:.72}
.welcome-prose p:nth-last-child(2){margin-bottom:4px;color:var(--plum);font-weight:700}
.welcome-prose p:last-child{margin-bottom:0;color:var(--night);font-size:1.15rem;font-weight:800}

/* ---------- Home news: magazine spread ---------- */
.news-showcase{position:relative;background:#fff}
.news-showcase:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.94%,rgba(29,22,34,.035) 50%,transparent 50.06%);pointer-events:none}
.featured-story{position:relative;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(360px,.7fr);min-height:650px;margin-bottom:56px;overflow:hidden;border-radius:var(--radius-lg);background:var(--night);box-shadow:var(--shadow-lg)}
.featured-story-media{position:relative;overflow:hidden;min-width:0}
.featured-story-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,rgba(18,9,29,.42))}
.featured-story-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.featured-story:hover .featured-story-media img{transform:scale(1.035)}
.featured-story-copy{position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(44px,5vw,74px);min-width:0;background:linear-gradient(145deg,#21112f,#13091d)}
.featured-story-copy:before{content:"";position:absolute;left:-70px;top:0;width:140px;height:100%;background:inherit;clip-path:polygon(52% 0,100% 0,100% 100%,0 100%)}
.featured-story-copy .story-category{color:var(--mint)}
.featured-story-copy h3{margin:20px 0 22px;color:#fff;font-size:clamp(2.7rem,4.8vw,5.2rem);overflow-wrap:anywhere}
.featured-story-copy p{color:rgba(255,255,255,.66);font-size:1.06rem}
.featured-story-copy .arrow-link{margin-top:14px;color:var(--amber)}
.story-river{border-top:1px solid var(--line)}
.story-row{position:relative;display:grid;grid-template-columns:70px 150px minmax(0,1fr) 54px;gap:clamp(18px,3vw,42px);align-items:center;padding:32px 0;border-bottom:1px solid var(--line);transition:padding .3s var(--ease),background .3s}
.story-row:before{content:"";position:absolute;inset:0 -26px;background:linear-gradient(90deg,rgba(224,245,239,.65),rgba(217,200,241,.18));opacity:0;border-radius:24px;transition:opacity .3s}
.story-row:hover{padding-left:18px;padding-right:18px}
.story-row:hover:before{opacity:1}
.story-number,.story-thumb,.story-row-copy,.story-row-arrow{position:relative;z-index:1}
.story-number{color:var(--plum);font-size:.78rem;font-weight:800;letter-spacing:.14em}
.story-thumb{width:150px;height:104px;overflow:hidden;border-radius:20px;background:var(--cream)}
.story-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .45s var(--ease)}
.story-row:hover .story-thumb img{transform:scale(1.06)}
.story-row-copy{min-width:0}
.story-row-copy h3{margin:8px 0 6px;font-size:clamp(1.55rem,2.5vw,2.35rem);overflow-wrap:anywhere}
.story-row-copy p{margin:0;max-width:780px}
.story-row-arrow{width:50px;height:50px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:1.15rem;transition:transform .3s,background .3s,color .3s}
.story-row:hover .story-row-arrow{transform:rotate(45deg);background:var(--night);color:#fff}

/* ---------- Support links: dark typographic marquee ---------- */
.support-marquee{position:relative;overflow:hidden;background:linear-gradient(135deg,#1a0d28,#11272b);color:#fff}
.support-marquee:before{content:"";position:absolute;inset:0;opacity:.1;background-image:radial-gradient(rgba(255,255,255,.75) .7px,transparent .7px);background-size:9px 9px}
.support-marquee-glow{position:absolute;right:-18vw;top:-22vw;width:55vw;height:55vw;border-radius:50%;background:radial-gradient(circle,rgba(100,200,170,.26),transparent 65%)}
.support-marquee .section-heading{position:relative;z-index:1}
.support-marquee h2{color:#fff;max-width:800px}
.organisation-track{position:relative;z-index:2;width:min(100%,1600px);margin-inline:auto;padding:0 36px}
.organisation-line{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line-light);border-left:1px solid var(--line-light)}
.organisation-line a{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:128px;padding:30px;border-right:1px solid var(--line-light);border-bottom:1px solid var(--line-light);overflow:hidden;transition:background .3s,color .3s}
.organisation-line a:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(138,99,210,.28),rgba(100,200,170,.22));transform:translateY(105%);transition:transform .4s var(--ease)}
.organisation-line a strong,.organisation-line a span{position:relative;z-index:1}
.organisation-line a strong{font-size:clamp(1.15rem,1.9vw,1.6rem);letter-spacing:-.025em}
.organisation-line a span{color:var(--amber);font-size:.72rem;font-weight:750;text-transform:uppercase;letter-spacing:.11em;white-space:nowrap}
.organisation-line a:hover:before{transform:none}

/* ---------- Being Forgotten: layered editorial experience ---------- */
.book-experience{position:relative;overflow:hidden;background:var(--night);color:#fff}
.book-experience:before{content:"BEING\A FORGOTTEN";white-space:pre;position:absolute;left:-.05em;bottom:-.08em;color:rgba(255,255,255,.035);font-size:clamp(8rem,20vw,21rem);font-weight:800;line-height:.67;letter-spacing:-.09em}
.book-glow{position:absolute;left:38%;top:-20%;width:55vw;height:55vw;border-radius:50%;background:radial-gradient(circle,rgba(138,99,210,.25),transparent 65%)}
.book-experience-grid{position:relative;display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.25fr);gap:clamp(65px,10vw,150px);align-items:center}
.book-intro{position:sticky;top:150px;align-self:start;padding-top:28px}
.book-intro h2{color:#fff;margin-bottom:24px;max-width:560px}
.book-intro p{color:rgba(255,255,255,.62);font-size:1.14rem;max-width:430px;margin-bottom:32px}
.chapter-timeline{position:relative;border-left:1px solid rgba(255,255,255,.16)}
.chapter-timeline:before{content:"";position:absolute;left:-1px;top:0;width:1px;height:34%;background:linear-gradient(var(--amber),var(--mint))}
.chapter-timeline-item{position:relative;display:grid;grid-template-columns:150px minmax(0,1fr) 52px;gap:30px;align-items:center;padding:34px 0 34px 46px;border-bottom:1px solid rgba(255,255,255,.13);transition:padding-left .3s var(--ease)}
.chapter-timeline-item:hover{padding-left:58px}
.chapter-timeline-item:before{content:"";position:absolute;left:-7px;width:13px;height:13px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 8px rgba(255,184,62,.1)}
.chapter-image{width:150px;height:120px;overflow:hidden;border-radius:24px;background:#fff;transform:rotate(-2deg);transition:transform .35s var(--ease)}
.chapter-timeline-item:nth-child(2) .chapter-image{transform:rotate(2deg)}
.chapter-timeline-item:hover .chapter-image{transform:rotate(0) scale(1.04)}
.chapter-image img{width:100%;height:100%;object-fit:cover}
.chapter-copy{min-width:0}
.chapter-copy>span{color:var(--mint);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.chapter-copy h3{margin:7px 0 7px;color:#fff;overflow-wrap:anywhere}
.chapter-copy p{margin:0;color:rgba(255,255,255,.55)}
.chapter-arrow{width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--amber);transition:transform .3s,background .3s,color .3s}
.chapter-timeline-item:hover .chapter-arrow{transform:rotate(45deg);background:#fff;color:var(--night)}

/* ---------- Events: refined timeline ---------- */
.events-stage{position:relative;background:linear-gradient(180deg,#fff,#f6f1ea)}
.events-stage:before{content:"";position:absolute;right:5vw;top:8%;width:220px;height:220px;border-radius:50%;border:1px solid rgba(94,52,120,.12);box-shadow:0 0 0 35px rgba(94,52,120,.03),0 0 0 70px rgba(94,52,120,.02)}
.event-timeline{position:relative;border-top:1px solid var(--line)}
.event-timeline article{position:relative;display:grid;grid-template-columns:190px minmax(0,1fr) 100px;gap:44px;align-items:center;padding:34px 0;border-bottom:1px solid var(--line)}
.event-timeline article:before{content:"";position:absolute;left:0;top:0;width:0;height:100%;background:linear-gradient(90deg,rgba(255,184,62,.12),transparent);transition:width .45s var(--ease)}
.event-timeline article:hover:before{width:100%}
.event-timeline time,.event-timeline div,.event-timeline a{position:relative;z-index:1}
.event-timeline time{color:var(--plum);font-weight:750}
.event-timeline h3{margin:0 0 7px;font-size:clamp(1.45rem,2.3vw,2.2rem)}
.event-timeline p{margin:0}
.event-timeline article>a{justify-self:end;font-weight:750;color:var(--mint-deep)}

/* ---------- Newsletter: premium glass panel ---------- */
.newsletter-stage{position:relative;overflow:hidden;padding:clamp(90px,9vw,140px) 0;background:linear-gradient(125deg,#4f2a71 0%,#214d57 52%,#1c1028 100%);color:#fff}
.newsletter-stage:before{content:"";position:absolute;inset:0;opacity:.1;background-image:linear-gradient(rgba(255,255,255,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.2) 1px,transparent 1px);background-size:64px 64px}
.newsletter-stage-art span{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.16)}
.newsletter-stage-art span:nth-child(1){width:440px;height:440px;right:-100px;top:-130px}
.newsletter-stage-art span:nth-child(2){width:300px;height:300px;right:-30px;top:-60px}
.newsletter-stage-art span:nth-child(3){width:130px;height:130px;left:7%;bottom:-50px;background:rgba(255,184,62,.14);border-color:rgba(255,184,62,.28)}
.newsletter-stage-inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,.82fr);gap:clamp(46px,8vw,120px);align-items:center}
.newsletter-copy h2{color:#fff;max-width:780px}
.newsletter-copy p{max-width:660px;color:rgba(255,255,255,.65);font-size:1.08rem}
.newsletter-form-wrap{padding:18px;border:1px solid rgba(255,255,255,.19);border-radius:999px;background:rgba(255,255,255,.08);box-shadow:0 24px 70px rgba(0,0,0,.22);backdrop-filter:blur(20px)}
.signup-form,.newsletter-large-form{display:flex;align-items:center;gap:12px}
.signup-form input,.newsletter-large-form input{min-width:0;flex:1;height:54px;padding:0 20px;border:0;border-radius:999px;background:rgba(255,255,255,.94);color:var(--ink);outline:none}
.signup-form button,.newsletter-large-form button{height:54px;padding:0 24px;border:0;border-radius:999px;background:var(--amber);color:var(--night);font-weight:800;cursor:pointer;transition:transform .25s,box-shadow .25s}
.signup-form button:hover,.newsletter-large-form button:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(255,184,62,.24)}
.form-status{display:grid;gap:3px;margin-bottom:14px;padding:14px 18px;border-radius:18px;font-size:.92rem}
.form-status.success{background:var(--mint-soft);color:var(--mint-deep)}
.form-status.error{background:#fff0f2;color:#9f304b}

/* ---------- Inner-page hero system ---------- */
.inner-hero{position:relative;min-height:600px;display:flex;align-items:center;overflow:hidden;padding:clamp(110px,12vw,185px) 0;background:linear-gradient(135deg,#f4edf8,#fff 52%,#e9f7f2)}
.inner-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(47,24,61,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(47,24,61,.05) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,rgba(0,0,0,.8),transparent 85%)}
.inner-hero-orbit{position:absolute;right:-8vw;top:50%;width:min(46vw,650px);aspect-ratio:1;transform:translateY(-50%);border-radius:50%;border:1px solid rgba(94,52,120,.12);box-shadow:0 0 0 55px rgba(94,52,120,.035),0 0 0 110px rgba(100,200,170,.025)}
.inner-hero-orbit:before,.inner-hero-orbit:after{content:"";position:absolute;border-radius:50%;inset:22%;border:1px dashed rgba(94,52,120,.18)}
.inner-hero-orbit:after{inset:38%;background:radial-gradient(circle,rgba(100,200,170,.28),transparent 67%);border:0}
.inner-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.55fr);gap:clamp(48px,8vw,120px);align-items:end}
.inner-hero-copy{min-width:0}
.inner-hero-copy h1{max-width:980px;margin:0 0 30px;font-size:clamp(4rem,8vw,8.5rem);overflow-wrap:anywhere}
.inner-hero-copy p{max-width:720px;margin:0;font-size:clamp(1.1rem,1.7vw,1.4rem);line-height:1.6}
.inner-hero-action{justify-self:end}
.inner-hero-aside{position:relative;min-width:0;display:grid;gap:24px;justify-items:end}
.resource-hero-aside{align-self:stretch;align-content:center}
.resource-hero-emblem{position:relative;width:min(320px,26vw);aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);box-shadow:0 38px 100px rgba(0,0,0,.28);backdrop-filter:blur(20px)}
.resource-hero-emblem:before,.resource-hero-emblem:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.18)}
.resource-hero-emblem:before{inset:-28px}.resource-hero-emblem:after{inset:-58px;border-style:dashed;animation:slowSpin 24s linear infinite}
.resource-hero-emblem span{position:absolute;inset:17%;border-radius:50%;background:conic-gradient(from 60deg,rgba(138,99,210,.5),rgba(100,200,170,.5),rgba(255,184,62,.48),rgba(138,99,210,.5));filter:blur(16px)}
.resource-hero-emblem img{position:relative;z-index:1;width:72%;height:72%;object-fit:contain;border-radius:50%;background:#fff;padding:12px}
.resource-hero-aside .information-notice,.news-hero-aside .information-notice{max-width:420px}
.events-hero-aside{align-content:center;justify-items:center}
.event-hero-calendar{position:relative;width:min(320px,27vw);aspect-ratio:1.12;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:12px;padding:70px 24px 24px;border:1px solid rgba(29,22,34,.11);border-radius:38px;background:rgba(255,255,255,.72);box-shadow:var(--shadow-lg);backdrop-filter:blur(20px);transform:rotate(3deg)}
.event-hero-calendar:before{content:"";position:absolute;left:0;right:0;top:46px;height:1px;background:var(--line)}
.event-hero-calendar>span{position:absolute;top:22px;width:14px;height:35px;border-radius:999px;background:var(--night)}
.event-hero-calendar>span:nth-child(1){left:62px}.event-hero-calendar>span:nth-child(2){left:50%;transform:translateX(-50%)}.event-hero-calendar>span:nth-child(3){right:62px}
.event-hero-calendar i{display:block;border-radius:16px;background:linear-gradient(145deg,var(--mint-soft),#fff);box-shadow:inset 0 0 0 1px rgba(29,22,34,.05)}
.event-hero-calendar i:nth-of-type(2),.event-hero-calendar i:nth-of-type(5){background:linear-gradient(145deg,var(--violet-soft),#fff)}
.event-hero-calendar i:nth-of-type(3){background:linear-gradient(145deg,var(--amber-soft),#fff)}
.news-hero-aside{align-content:center}
.news-hero-art{position:relative;width:min(360px,28vw);aspect-ratio:.9;overflow:hidden;border-radius:38px;background:#fff;box-shadow:var(--shadow-lg);transform:rotate(4deg)}
.news-hero-art:before{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.72);border-radius:28px;z-index:1}
.news-hero-art img{width:100%;height:100%;object-fit:cover}
.contact-hero-aside{position:relative;justify-self:end;width:min(360px,29vw);aspect-ratio:1;display:grid;place-items:center}
.contact-hero-aside:before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 180deg,var(--violet-soft),var(--mint-soft),var(--amber-soft),var(--violet-soft));filter:blur(22px);opacity:.72}
.contact-hero-aside span{position:absolute;border-radius:50%;border:1px solid rgba(94,52,120,.18)}
.contact-hero-aside span:first-child{inset:0}.contact-hero-aside span:nth-child(2){inset:15%;border-style:dashed;animation:slowSpin 22s linear infinite}
.contact-hero-aside img{position:relative;z-index:1;width:62%;height:62%;object-fit:contain;border-radius:50%;background:#fff;padding:14px;box-shadow:var(--shadow-lg)}
.resources-hero{background:linear-gradient(135deg,#0f0818,#2b1640 56%,#153737);color:#fff}
.resources-hero h1,.resources-hero .eyebrow,.resources-hero p{color:#fff}
.resources-hero .inner-hero-orbit{border-color:rgba(255,255,255,.18);box-shadow:0 0 0 55px rgba(255,255,255,.035),0 0 0 110px rgba(100,200,170,.045)}
.resources-hero .information-notice{color:rgba(255,255,255,.72);background:rgba(255,255,255,.08);border-color:var(--amber)}
.events-hero{background:linear-gradient(135deg,#fff5e2,#fff 55%,#e3f5ef)}
.news-hero{background:linear-gradient(135deg,#f4edf9,#fff 50%,#fff3db)}
.contact-hero{background:linear-gradient(135deg,#eff8f5,#fff 48%,#f2eaf7)}
.generic-hero{min-height:500px}

/* ---------- About page ---------- */
.about-hero{background:linear-gradient(145deg,#fff 0%,#f3edf8 53%,#e4f6ef 100%)}
.about-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.65fr);gap:clamp(50px,9vw,130px);align-items:center}
.about-hero-emblem{position:relative;justify-self:end;width:min(430px,34vw);aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.68);box-shadow:var(--shadow-lg);backdrop-filter:blur(24px)}
.about-hero-emblem:before{content:"";position:absolute;inset:-24px;border-radius:50%;background:conic-gradient(from 90deg,var(--violet-soft),var(--mint-soft),var(--amber-soft),var(--violet-soft));z-index:-1;animation:slowSpin 26s linear infinite}
.about-hero-emblem img{width:82%;height:82%;object-fit:contain;border-radius:50%}
.about-emblem-ring{position:absolute;inset:-58px;border:1px dashed rgba(94,52,120,.2);border-radius:50%}
.about-story{position:relative;background:var(--paper)}
.about-story-grid{display:grid;grid-template-columns:minmax(280px,.42fr) minmax(0,1fr);gap:clamp(60px,9vw,145px);align-items:start}
.about-story-label{position:sticky;top:140px;padding-top:26px;border-top:1px solid var(--line)}
.about-story-label h2{font-size:clamp(2rem,3.4vw,3.7rem)}
.about-story-label p{font-size:1.04rem}
.section-index-line{display:block;width:70px;height:4px;margin-bottom:30px;border-radius:999px;background:linear-gradient(90deg,var(--amber),var(--violet),var(--mint))}
.about-story-copy{max-width:860px}
.about-purpose{background:linear-gradient(180deg,#f7f2eb,#fff)}
.purpose-river{border-top:1px solid var(--line)}
.purpose-river>a{position:relative;display:grid;grid-template-columns:70px minmax(220px,.7fr) minmax(280px,1fr) 54px;gap:clamp(20px,4vw,56px);align-items:center;padding:32px 0;border-bottom:1px solid var(--line);overflow:hidden;transition:padding .35s var(--ease)}
.purpose-river>a:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--mint-soft),rgba(217,200,241,.42));transform:translateX(-101%);transition:transform .45s var(--ease)}
.purpose-river>a>*{position:relative;z-index:1}
.purpose-river>a:hover{padding-left:22px;padding-right:18px}
.purpose-river>a:hover:before{transform:none}
.purpose-number{color:var(--plum);font-size:.78rem;font-weight:800;letter-spacing:.15em}
.purpose-river strong{font-size:clamp(1.55rem,2.5vw,2.35rem);letter-spacing:-.035em}
.purpose-copy{color:var(--muted)}
.purpose-river i{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-style:normal;transition:transform .3s,background .3s,color .3s}
.purpose-river>a:hover i{transform:rotate(45deg);background:var(--night);color:#fff}

/* ---------- Resources directory ---------- */
.resources-directory{background:linear-gradient(180deg,#fff,#f6f0e8)}
.resource-filter{position:sticky;top:94px;z-index:20;display:flex;flex-wrap:wrap;gap:8px;width:max-content;max-width:100%;margin:0 auto 60px;padding:8px;border:1px solid var(--line);border-radius:999px;background:rgba(255,253,249,.86);box-shadow:var(--shadow-sm);backdrop-filter:blur(20px)}
.resource-filter button{min-height:44px;padding:0 18px;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:.86rem;font-weight:700;cursor:pointer;transition:background .25s,color .25s,transform .25s}
.resource-filter button:hover{transform:translateY(-1px);color:var(--night)}
.resource-filter button.active{background:var(--night);color:#fff}
.resource-ledger{border-top:1px solid var(--line)}
.resource-entry{position:relative;display:grid;grid-template-columns:68px 90px minmax(0,1fr) 90px;gap:clamp(18px,3.5vw,50px);align-items:center;padding:30px 0;border-bottom:1px solid var(--line);overflow:hidden;transition:padding .35s var(--ease)}
.resource-entry:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(224,245,239,.78),rgba(217,200,241,.26),transparent);transform:translateX(-102%);transition:transform .5s var(--ease)}
.resource-entry>*{position:relative;z-index:1}
.resource-entry:hover{padding-left:22px;padding-right:18px}
.resource-entry:hover:before{transform:none}
.resource-index{color:var(--plum);font-size:.75rem;font-weight:800;letter-spacing:.14em}
.resource-mark{width:86px;height:86px;display:grid;place-items:center;overflow:hidden;border-radius:26px;background:linear-gradient(145deg,var(--violet-soft),var(--mint-soft));box-shadow:0 14px 34px rgba(33,18,43,.09)}
.resource-mark img{width:100%;height:100%;object-fit:cover}
.resource-mark span{font-size:1.2rem;font-weight:800;color:var(--night)}
.resource-copy{min-width:0}
.resource-copy h2{margin:7px 0 7px;font-size:clamp(1.65rem,2.8vw,2.7rem);overflow-wrap:anywhere}
.resource-copy p{margin:0;max-width:820px}
.resource-link{justify-self:end;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--night);color:#fff;font-size:.8rem;font-weight:750;transition:transform .3s,background .3s}
.resource-entry:hover .resource-link{transform:rotate(8deg) scale(1.05);background:var(--plum)}
.resource-entry[hidden]{display:none!important}

/* ---------- Events page ---------- */
.events-page{background:linear-gradient(180deg,#fff,#f7f2eb)}
.event-ledger{border-top:1px solid var(--line)}
.event-ledger article{position:relative;display:grid;grid-template-columns:70px 190px minmax(0,1fr) 90px;gap:clamp(20px,3.5vw,52px);align-items:center;padding:38px 0;border-bottom:1px solid var(--line);overflow:hidden}
.event-ledger article:before{content:"";position:absolute;left:0;top:0;width:6px;height:100%;background:linear-gradient(var(--violet),var(--mint));transform:scaleY(0);transform-origin:bottom;transition:transform .35s var(--ease)}
.event-ledger article:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,184,62,.11),transparent);opacity:0;transition:opacity .3s}
.event-ledger article:hover:before{transform:scaleY(1)}
.event-ledger article:hover:after{opacity:1}
.event-ledger article>*{position:relative;z-index:1}
.event-index{color:var(--plum);font-size:.76rem;font-weight:800;letter-spacing:.14em}
.event-ledger time{font-weight:750;color:var(--mint-deep)}
.event-ledger h2{margin:8px 0;font-size:clamp(1.7rem,3vw,3rem);overflow-wrap:anywhere}
.event-ledger p{margin:0;max-width:760px}
.event-ledger small{display:block;margin-top:12px;color:var(--plum);font-weight:650}
.event-ledger article>a{justify-self:end;display:grid;place-items:center;width:66px;height:66px;border-radius:50%;border:1px solid var(--line);font-size:.78rem;font-weight:750;transition:background .3s,color .3s,transform .3s}
.event-ledger article:hover>a{background:var(--night);color:#fff;transform:rotate(6deg)}
.empty-stage{position:relative;min-height:430px;display:grid;place-items:center;text-align:center;padding:60px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(145deg,#fff,var(--cream))}
.empty-stage h2,.empty-stage p{position:relative;z-index:1;max-width:720px}
.empty-stage h2{margin-bottom:10px}
.empty-orbit{position:absolute;width:370px;height:370px;border-radius:50%;border:1px solid rgba(94,52,120,.14);box-shadow:0 0 0 45px rgba(94,52,120,.035),0 0 0 90px rgba(100,200,170,.025)}

/* ---------- News archive ---------- */
.news-archive{background:linear-gradient(180deg,#fff,#faf7f2)}
.archive-feature{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.7fr);min-height:580px;margin-bottom:80px;border-radius:var(--radius-lg);overflow:hidden;background:var(--night);box-shadow:var(--shadow-lg)}
.archive-feature-media{min-width:0;overflow:hidden}
.archive-feature-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.archive-feature:hover img{transform:scale(1.04)}
.archive-feature-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(44px,6vw,80px);min-width:0}
.archive-feature-copy .story-category{color:var(--mint)}
.archive-feature-copy h2{margin:18px 0 24px;color:#fff;font-size:clamp(2.8rem,5vw,5.4rem);overflow-wrap:anywhere}
.archive-feature-copy p{color:rgba(255,255,255,.64)}
.archive-feature-copy .arrow-link{margin-top:12px;color:var(--amber)}
.archive-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(34px,5vw,70px) 34px}
.archive-item{grid-column:span 6;min-width:0}
.archive-item:nth-child(3n+1){grid-column:span 7}
.archive-item:nth-child(3n+2){grid-column:span 5;padding-top:120px}
.archive-item-media{display:block;aspect-ratio:1.25;overflow:hidden;border-radius:34px;background:var(--cream);box-shadow:var(--shadow-sm)}
.archive-item:nth-child(3n+2) .archive-item-media{aspect-ratio:.92}
.archive-item-media img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}
.archive-item:hover .archive-item-media img{transform:scale(1.045)}
.archive-item-copy{padding:28px 6px 20px}
.archive-item-copy h2{margin:10px 0 14px;font-size:clamp(2rem,3.6vw,3.8rem);overflow-wrap:anywhere}
.archive-item-copy p{max-width:650px}

/* ---------- Memoir landing and chapters ---------- */
.memoir-hero{position:relative;min-height:830px;display:flex;align-items:center;overflow:hidden;padding:clamp(120px,13vw,190px) 0;background:linear-gradient(135deg,#0f0718,#271137 52%,#19383a);color:#fff}
.memoir-hero:before{content:"";position:absolute;inset:0;opacity:.1;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);background-size:74px 74px}
.memoir-hero-glow{position:absolute;right:-10vw;top:-18vw;width:62vw;height:62vw;border-radius:50%;background:radial-gradient(circle,rgba(138,99,210,.35),transparent 65%)}
.memoir-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,.95fr) minmax(500px,1fr);gap:clamp(60px,9vw,130px);align-items:center}
.memoir-hero-copy h1{color:#fff;font-size:clamp(4rem,8vw,8.6rem);margin-bottom:28px}
.memoir-hero-copy p{max-width:720px;color:rgba(255,255,255,.68);font-size:clamp(1.08rem,1.55vw,1.3rem)}
.memoir-hero-copy .btn{margin-top:20px}
.memoir-art-stack{position:relative;min-height:560px}
.memoir-art-stack figure{position:absolute;width:300px;height:390px;overflow:hidden;border:1px solid rgba(255,255,255,.22);border-radius:34px;background:#fff;box-shadow:0 40px 100px rgba(0,0,0,.34)}
.memoir-art-stack figure img{width:100%;height:100%;object-fit:cover}
.memoir-art-stack figure:nth-child(1){left:2%;top:7%;transform:rotate(-8deg)}
.memoir-art-stack figure:nth-child(2){right:0;top:0;transform:rotate(7deg)}
.memoir-art-stack figure:nth-child(3){left:36%;bottom:0;transform:rotate(1deg)}
.chapter-archive{background:linear-gradient(180deg,#fff,#f7f2eb)}
.chapter-river{display:grid;gap:clamp(90px,12vw,170px)}
.chapter-river-item{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);gap:clamp(50px,9vw,130px);align-items:center}
.chapter-river-item.is-reversed{grid-template-columns:minmax(340px,.72fr) minmax(0,1.08fr)}
.chapter-river-item.is-reversed .chapter-river-image{order:2}
.chapter-river-image{position:relative;display:block;aspect-ratio:1.28;overflow:hidden;border-radius:var(--radius-lg);background:var(--cream);box-shadow:var(--shadow-md)}
.chapter-river-image:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.56);border-radius:calc(var(--radius-lg) - 12px);z-index:1;pointer-events:none}
.chapter-river-image img{width:100%;height:100%;object-fit:cover;transition:transform .75s var(--ease)}
.chapter-river-item:hover .chapter-river-image img{transform:scale(1.04)}
.chapter-river-copy>span{color:var(--mint-deep);font-size:.74rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.chapter-river-copy h2{margin:14px 0 24px;font-size:clamp(3rem,6vw,6.2rem);overflow-wrap:anywhere}
.chapter-river-copy p{font-size:1.08rem;line-height:1.7}

/* ---------- Long-form article and chapter reading ---------- */
.article-hero{position:relative;min-height:790px;display:flex;align-items:center;overflow:hidden;isolation:isolate;padding:clamp(120px,12vw,184px) 0;background:linear-gradient(132deg,#f8f1fa 0%,#fffdf9 48%,#e2f4ef 100%)}
.article-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 17% 20%,rgba(138,99,210,.18),transparent 28%),radial-gradient(circle at 80% 72%,rgba(100,200,170,.21),transparent 31%);z-index:-2}
.article-hero-mesh{position:absolute;inset:0;opacity:.45;background-image:linear-gradient(rgba(94,52,120,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(94,52,120,.07) 1px,transparent 1px);background-size:78px 78px;mask-image:linear-gradient(110deg,rgba(0,0,0,.85),transparent 80%);z-index:-1}
.article-hero-orbits{position:absolute;right:-14vw;top:50%;width:min(68vw,980px);aspect-ratio:1;transform:translateY(-50%);pointer-events:none}
.article-hero-orbits i{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(94,52,120,.11)}
.article-hero-orbits i:nth-child(2){inset:13%;border-style:dashed;border-color:rgba(100,200,170,.23);animation:slowSpin 32s linear infinite}
.article-hero-orbits i:nth-child(3){inset:30%;background:radial-gradient(circle,rgba(255,184,62,.18),transparent 65%);border:0}
.article-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.72fr);gap:clamp(56px,8vw,124px);align-items:center}
.article-hero-copy{min-width:0;max-width:900px}
.article-hero-copy h1{margin:0 0 32px;font-size:clamp(4rem,7.5vw,8.2rem);line-height:.9;letter-spacing:-.067em;overflow-wrap:anywhere}
.article-meta-line{display:flex;flex-wrap:wrap;align-items:center;gap:14px;color:var(--plum);font-size:.84rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.article-meta-line i{display:block;width:44px;height:1px;background:linear-gradient(90deg,var(--violet),var(--mint))}
.article-cover{position:relative;justify-self:end;width:min(500px,37vw);aspect-ratio:.88;display:grid;place-items:center;overflow:visible;transform:rotate(2.5deg)}
.article-cover-frame{position:absolute;inset:2%;border-radius:52px 24px 52px 24px;background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(255,255,255,.46));border:1px solid rgba(255,255,255,.9);box-shadow:0 48px 120px rgba(41,20,51,.24);backdrop-filter:blur(20px)}
.article-cover-frame:before{content:"";position:absolute;inset:16px;border:1px solid rgba(94,52,120,.09);border-radius:40px 16px 40px 16px}
.article-cover img{position:relative;z-index:2;width:86%;height:86%;object-fit:cover;border-radius:40px 18px 40px 18px;box-shadow:0 24px 70px rgba(31,15,40,.22)}
.article-hero.has-logo .article-cover img{width:68%;height:68%;object-fit:contain;border-radius:50%;padding:12px;background:#fff}
.article-cover-sheen{position:absolute;left:14%;right:14%;bottom:-18px;z-index:3;height:10px;border-radius:999px;background:linear-gradient(90deg,#f3a8b8,#ffb83e,#64c8aa,#8a63d2,#4ba2d7);box-shadow:0 12px 30px rgba(31,15,40,.18)}
.chapter-hero{position:relative;overflow:hidden;padding:clamp(110px,12vw,185px) 0;background:linear-gradient(135deg,#0f0718,#271238 52%,#163438);color:#fff}
.chapter-hero-glow{position:absolute;right:-10vw;top:-16vw;width:56vw;height:56vw;border-radius:50%;background:radial-gradient(circle,rgba(138,99,210,.22),transparent 66%)}
.chapter-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.66fr);gap:clamp(50px,9vw,130px);align-items:center}
.chapter-hero-copy{min-width:0}.chapter-hero-copy h1{margin:0 0 26px;color:#fff;font-size:clamp(3.8rem,7.4vw,8rem);overflow-wrap:anywhere}
.chapter-hero-art{position:relative;justify-self:end;width:min(470px,36vw);aspect-ratio:.96;overflow:hidden;border-radius:44px;background:#fff;box-shadow:var(--shadow-lg);transform:rotate(-3deg)}
.chapter-hero-art:before{content:"";position:absolute;inset:16px;border:1px solid rgba(255,255,255,.66);border-radius:32px;z-index:1;pointer-events:none}.chapter-hero-art img{width:100%;height:100%;object-fit:cover}
.reading-line{position:sticky;top:92px;z-index:800;height:3px;background:rgba(29,22,34,.07)}
.reading-line span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--violet),var(--mint),var(--amber))}.admin-bar .reading-line{top:124px}
.article-reading{position:relative;overflow:hidden;background:linear-gradient(180deg,#f6f0e9 0%,#fffdf9 48%,#f2ece5 100%)}
.article-reading:before{content:"";position:absolute;inset:0;opacity:.38;background-image:radial-gradient(circle at 1px 1px,rgba(94,52,120,.1) 1px,transparent 0);background-size:28px 28px;mask-image:linear-gradient(90deg,rgba(0,0,0,.44),transparent 52%,rgba(0,0,0,.18))}
.article-reading-glow{position:absolute;border-radius:50%;pointer-events:none}.article-reading-glow-a{left:-14vw;top:7%;width:40vw;height:40vw;background:radial-gradient(circle,rgba(138,99,210,.15),transparent 68%)}.article-reading-glow-b{right:-12vw;bottom:6%;width:36vw;height:36vw;background:radial-gradient(circle,rgba(100,200,170,.17),transparent 68%)}
.article-reading-shell{position:relative;display:grid;grid-template-columns:260px minmax(0,920px);gap:clamp(54px,7vw,112px);align-items:start;justify-content:center}
.article-side{position:sticky;top:138px;display:grid;gap:26px;min-width:0}
.article-side .arrow-link{justify-self:start}.article-side .information-notice{margin:0;background:rgba(255,255,255,.68);box-shadow:0 18px 45px rgba(31,15,40,.08)}
.article-toc{display:grid;gap:16px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.article-toc>span{color:var(--plum);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.article-toc ol{display:grid;gap:4px;margin:0;padding:0;list-style:none;counter-reset:toc}
.article-toc li{counter-increment:toc}.article-toc a{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;padding:8px 0;color:#625768;font-size:.87rem;line-height:1.4;transition:color .25s,transform .25s}.article-toc a:before{content:counter(toc,decimal-leading-zero);color:var(--mint-deep);font-size:.65rem;font-weight:800;letter-spacing:.06em}.article-toc a:hover,.article-toc a.active{color:var(--night);transform:translateX(4px)}
.article-paper-wrap{position:relative;min-width:0;padding:clamp(56px,7vw,96px) clamp(34px,7vw,98px);border:1px solid rgba(29,22,34,.08);border-radius:52px 22px 52px 22px;background:rgba(255,255,255,.94);box-shadow:0 42px 120px rgba(31,15,40,.15);backdrop-filter:blur(14px)}
.article-paper-wrap:before{content:"";position:absolute;inset:18px;border:1px solid rgba(94,52,120,.07);border-radius:38px 14px 38px 14px;pointer-events:none}
.article-paper-wrap:after{content:"";position:absolute;left:clamp(34px,7vw,98px);right:clamp(34px,7vw,98px);top:0;height:6px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,#f3a8b8,#ffb83e,#64c8aa,#8a63d2,#4ba2d7)}
.article-paper-fold{position:absolute;width:92px;height:92px;border-radius:50%;filter:blur(0);opacity:.5;pointer-events:none}.article-paper-fold-a{right:-24px;top:18%;background:radial-gradient(circle,rgba(138,99,210,.23),transparent 68%)}.article-paper-fold-b{left:-30px;bottom:14%;background:radial-gradient(circle,rgba(100,200,170,.25),transparent 68%)}
.article-body{position:relative;z-index:2;max-width:760px;margin-inline:auto;min-width:0;font-family:"Outfit",system-ui,sans-serif;font-size:clamp(1.07rem,1.12vw,1.18rem);line-height:1.92;color:#403842;overflow-wrap:anywhere;counter-reset:articleSection}
.article-body h2{position:relative;margin:2.25em 0 .8em;padding-top:.2em;font-family:"Outfit",sans-serif;font-size:clamp(2.15rem,3.6vw,3.55rem);line-height:1;counter-increment:articleSection}
.article-body h2:before{content:counter(articleSection,decimal-leading-zero);display:block;margin-bottom:14px;color:var(--mint-deep);font-size:.68rem;font-weight:800;letter-spacing:.18em}
.article-body h2:after{content:"";display:block;width:72px;height:4px;margin-top:18px;border-radius:999px;background:linear-gradient(90deg,var(--amber),var(--rose),var(--violet))}
.article-body h3{margin:1.95em 0 .72em;font-family:"Outfit",sans-serif;font-size:clamp(1.55rem,2.35vw,2.45rem);line-height:1.08}
.article-body p{color:#4b424e}.article-body p+p{margin-top:1.18em}
.article-body a{color:var(--plum);text-decoration:underline;text-decoration-color:rgba(94,52,120,.34);text-decoration-thickness:1px;text-underline-offset:5px;overflow-wrap:anywhere}
.article-body a:hover{color:var(--mint-deep);text-decoration-color:currentColor}
.article-body blockquote{position:relative;margin:2.4em -26px;padding:34px 38px 34px 48px;border:1px solid rgba(94,52,120,.1);border-left:5px solid var(--amber);border-radius:0 30px 30px 0;background:linear-gradient(135deg,var(--mint-soft),#fff 58%,var(--violet-soft));box-shadow:0 22px 58px rgba(31,15,40,.1);color:var(--plum);font-size:1.25em;line-height:1.62}
.article-body blockquote:before{content:"“";position:absolute;right:24px;top:8px;color:rgba(94,52,120,.1);font-size:6rem;font-weight:800;line-height:1}
.article-body address{margin:1.8em 0;padding:28px 30px;border-radius:24px;background:var(--cream);color:#4b424e;font-style:normal;line-height:1.8}
.article-body ul,.article-body ol{padding-left:1.35em}.article-body li{margin:.65em 0;color:#4b424e}
.article-body img{border-radius:28px;box-shadow:var(--shadow-sm)}
.article-body p:first-child:first-letter{float:left;margin:.1em .12em 0 0;color:var(--plum);font-size:5.1em;font-weight:780;line-height:.72}
.article-toc.is-empty{display:none}
.chapter-reading,.generic-reading{background:#fff}
.chapter-body{min-width:0;font-family:"Outfit",system-ui,sans-serif;font-size:clamp(1.05rem,1.15vw,1.18rem);line-height:1.88;color:#403842;overflow-wrap:anywhere}.chapter-body h2{margin:2.1em 0 .72em;font-family:"Outfit",sans-serif;font-size:clamp(2.1rem,4vw,3.9rem)}.chapter-body h3{margin:1.8em 0 .68em;font-family:"Outfit",sans-serif;font-size:clamp(1.6rem,2.7vw,2.7rem)}.chapter-body p{color:#4c434f}.chapter-body a{color:var(--plum);text-decoration:underline;text-decoration-color:rgba(94,52,120,.35);text-underline-offset:4px;overflow-wrap:anywhere}.chapter-body blockquote{margin:2.2em 0;padding:26px 0 26px 34px;border-left:4px solid var(--amber);color:var(--plum);font-size:1.28em;line-height:1.6}.chapter-body img{border-radius:28px;box-shadow:var(--shadow-sm)}.chapter-body p:first-child:first-letter,.about-story-copy p:first-child:first-letter{float:left;margin:.1em .12em 0 0;color:var(--plum);font-size:5.1em;font-weight:780;line-height:.72}
.chapter-reading-grid{display:grid;grid-template-columns:260px minmax(0,var(--reading));gap:clamp(55px,8vw,130px);align-items:start;justify-content:center}
.chapter-side-nav{position:sticky;top:140px;display:grid;border-top:1px solid var(--line)}
.chapter-side-nav>b{padding:16px 0;color:var(--plum);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase}
.chapter-side-nav>a{display:grid;gap:3px;padding:16px 0;border-top:1px solid var(--line);color:var(--muted)}
.chapter-side-nav>a span{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}
.chapter-side-nav>a small{font-size:.98rem}
.chapter-side-nav>a.active{color:var(--night)}
.chapter-side-nav>a.active small{font-weight:750}
.chapter-bottom-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;margin-top:70px;padding-top:26px;border-top:1px solid var(--line);font-family:"Outfit",sans-serif;font-weight:700}
.chapter-bottom-nav a:last-child{text-align:right}
.event-single-hero{background:linear-gradient(135deg,#fff5e2,#fff 55%,#e3f5ef)}
.resource-single-hero{background:linear-gradient(135deg,#f3edf8,#fff 55%,#e3f5ef)}

/* ---------- Contact ---------- */
.contact-stage{position:relative;background:linear-gradient(180deg,#fff,#f5efe7)}
.contact-stage:before{content:"";position:absolute;left:-12vw;bottom:-18vw;width:44vw;height:44vw;border-radius:50%;background:radial-gradient(circle,rgba(138,99,210,.12),transparent 68%)}
.contact-grid{position:relative;display:grid;grid-template-columns:minmax(0,.82fr) minmax(520px,1fr);gap:clamp(70px,9vw,140px);align-items:start}
.contact-copy{position:sticky;top:130px}
.contact-methods{display:grid;border-top:1px solid var(--line)}
.contact-method{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr) 44px;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);overflow:hidden}
.contact-method:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--mint-soft),transparent);transform:translateX(-102%);transition:transform .4s var(--ease)}
.contact-method:hover:before{transform:none}
.contact-method>*{position:relative;z-index:1}
.contact-method-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--night);color:#fff;font-weight:800}
.contact-method span span{display:block;color:var(--mint-deep);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.contact-method strong{display:block;margin-top:3px;font-size:1.1rem;overflow-wrap:anywhere}
.contact-method i{justify-self:end;font-style:normal}
.response-note{margin-top:28px}
.contact-form-panel{position:relative;padding:clamp(34px,5vw,60px);overflow:hidden;border:1px solid rgba(255,255,255,.66);border-radius:var(--radius-lg);background:rgba(255,255,255,.76);box-shadow:var(--shadow-lg);backdrop-filter:blur(24px)}
.contact-form-panel:before{content:"";position:absolute;right:-100px;top:-100px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(100,200,170,.25),transparent 66%)}
.contact-form-panel form{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.contact-form-panel label{display:grid;gap:9px;color:var(--night);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.contact-form-panel label:nth-of-type(3),.contact-form-panel label:nth-of-type(4){grid-column:1/-1}
.contact-form-panel input,.contact-form-panel select,.contact-form-panel textarea{width:100%;min-width:0;padding:15px 16px;border:1px solid rgba(29,22,34,.14);border-radius:16px;background:rgba(255,255,255,.82);color:var(--ink);font-weight:450;text-transform:none;letter-spacing:0;outline:none;transition:border-color .25s,box-shadow .25s,background .25s}
.contact-form-panel input:focus,.contact-form-panel select:focus,.contact-form-panel textarea:focus{border-color:var(--violet);box-shadow:0 0 0 4px rgba(138,99,210,.12);background:#fff}
.contact-form-panel textarea{resize:vertical;min-height:180px}
.contact-form-panel .btn{justify-self:start;grid-column:1/-1}

/* ---------- Newsletter page ---------- */
.newsletter-page-hero{position:relative;min-height:calc(100svh - 92px);display:flex;align-items:center;overflow:hidden;padding:clamp(100px,12vw,170px) 0;background:linear-gradient(125deg,#321848,#1f5459 54%,#12091d);color:#fff}
.newsletter-page-hero:before{content:"";position:absolute;inset:0;opacity:.11;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px);background-size:72px 72px}
.newsletter-page-orbits i{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.15)}
.newsletter-page-orbits i:nth-child(1){width:700px;height:700px;right:-200px;top:-230px}
.newsletter-page-orbits i:nth-child(2){width:480px;height:480px;right:-80px;top:-110px}
.newsletter-page-orbits i:nth-child(3){width:240px;height:240px;right:40px;top:5px;background:rgba(255,184,62,.1);border-color:rgba(255,184,62,.22)}
.newsletter-page-inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(480px,.8fr);gap:clamp(60px,9vw,140px);align-items:center}
.newsletter-page-copy h1{color:#fff;font-size:clamp(4rem,8vw,8.6rem);margin-bottom:28px}
.newsletter-page-copy p{max-width:700px;color:rgba(255,255,255,.68);font-size:1.2rem}
.newsletter-page-form{position:relative;padding:clamp(34px,5vw,58px);border:1px solid rgba(255,255,255,.19);border-radius:var(--radius-lg);background:rgba(255,255,255,.1);box-shadow:0 36px 100px rgba(0,0,0,.3);backdrop-filter:blur(24px)}
.newsletter-page-form h2{color:#fff;font-size:clamp(2rem,3.4vw,3.5rem)}
.newsletter-page-form p{color:rgba(255,255,255,.64)}
.newsletter-page-form .newsletter-large-form{margin-top:28px}

/* ---------- Generic / index / 404 ---------- */
.generic-reading .article-body{margin-inline:auto}
.index-river{background:#fff}
.index-list{border-top:1px solid var(--line)}
.index-list a{position:relative;display:grid;grid-template-columns:170px minmax(0,1fr) minmax(260px,.6fr) 50px;gap:30px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line);overflow:hidden}
.index-list a:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--mint-soft),transparent);transform:translateX(-101%);transition:transform .4s var(--ease)}
.index-list a:hover:before{transform:none}
.index-list a>*{position:relative;z-index:1}
.index-list span{color:var(--mint-deep);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em}
.index-list b{font-size:clamp(1.4rem,2.4vw,2.3rem);letter-spacing:-.03em}
.index-list small{color:var(--muted)}
.index-list i{justify-self:end;font-style:normal}
.not-found-stage{position:relative;min-height:calc(100svh - 92px);display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#0f0718,#29133a 55%,#153538);color:#fff}
.not-found-orbit{position:absolute;width:min(70vw,760px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.16);box-shadow:0 0 0 65px rgba(255,255,255,.035),0 0 0 130px rgba(100,200,170,.03)}
.not-found-inner{position:relative;z-index:1;text-align:center;max-width:900px;padding:100px 0}
.not-found-inner h1{color:#fff}
.not-found-inner p{color:rgba(255,255,255,.65);font-size:1.14rem}

/* ---------- Footer ---------- */
.site-footer{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 12%,rgba(76,112,190,.42),transparent 34%),radial-gradient(circle at 8% 86%,rgba(123,64,151,.5),transparent 38%),linear-gradient(145deg,#1a0d2b 0%,#2b1750 45%,#123c63 100%);color:#fff}
.footer-orbit{position:absolute;right:-180px;top:-220px;width:650px;height:650px;border-radius:50%;border:1px solid rgba(255,255,255,.1);box-shadow:0 0 0 70px rgba(255,255,255,.02),0 0 0 140px rgba(100,200,170,.018)}
.footer-shell{position:relative;display:grid;grid-template-columns:minmax(320px,.7fr) minmax(0,1.3fr);gap:clamp(70px,9vw,140px);padding-top:100px;padding-bottom:78px}
.footer-brand{display:grid;grid-template-columns:110px minmax(0,1fr);gap:28px;align-items:start}
.footer-logo-wrap{width:108px;height:108px;display:grid;place-items:center;padding:8px;border-radius:50%;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.3)}
.footer-logo-wrap img{width:100%;height:100%;object-fit:contain;border-radius:50%}
.footer-brand h2{margin:4px 0 12px;color:#fff;font-size:clamp(2rem,3.8vw,3.8rem)}
.footer-brand p{color:rgba(255,255,255,.63);max-width:410px}
.footer-brand small{color:var(--mint)}
.footer-nav-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0}
.footer-column h3{margin-bottom:12px;color:#fff;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
.footer-column>a{color:rgba(255,255,255,.64);font-size:.92rem;transition:color .25s,transform .25s;overflow-wrap:anywhere}
.footer-column>a:hover{color:#fff;transform:translateX(4px)}
.footer-contact-list{display:grid;width:100%;margin-top:10px;border-top:1px solid rgba(255,255,255,.12)}
.footer-contact-item{display:grid!important;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.footer-contact-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.1);color:var(--amber);font-weight:800}
.footer-contact-copy{display:grid}
.footer-contact-copy small{color:var(--mint);font-size:.65rem;text-transform:uppercase;letter-spacing:.1em}
.footer-contact-copy strong{font-size:.85rem;overflow-wrap:anywhere}
.footer-note{position:relative;padding:22px 0;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.48);font-size:.82rem}
.footer-bottom{position:relative;padding:18px 0;border-top:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.4);font-size:.78rem}
.back-top{position:fixed;right:24px;bottom:24px;z-index:900;width:50px;height:50px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(18,9,29,.9);color:#fff;box-shadow:0 16px 40px rgba(0,0,0,.24);backdrop-filter:blur(15px);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(15px);transition:opacity .3s,visibility .3s,transform .3s}
.back-top.show{opacity:1;visibility:visible;transform:none}

/* ---------- Rich text blocks ---------- */
.editorial-prose .article-callout,
.editorial-prose .article-quote,
.editorial-prose .chapter-pull{margin:clamp(30px,4vw,50px) 0;padding:clamp(26px,4vw,42px);border-left:4px solid var(--amber);border-radius:0 28px 28px 0;background:linear-gradient(135deg,var(--mint-soft),#fff 58%,var(--violet-soft));box-shadow:var(--shadow-sm)}
.editorial-prose .article-callout h3,
.editorial-prose .article-quote h3,
.editorial-prose .chapter-pull h3{margin-top:0;color:var(--night)}
.editorial-prose .article-callout p:last-child,
.editorial-prose .article-quote p:last-child,
.editorial-prose .chapter-pull p:last-child{margin-bottom:0}
.editorial-prose .article-emphasis{display:block;margin:30px 0;color:var(--plum);font-family:"Outfit",sans-serif;font-weight:750;font-size:1.12em}
.editorial-prose .article-list{padding-left:1.35em}
.editorial-prose .article-list li{margin:.58em 0}
.editorial-prose .dialogue{margin-left:clamp(16px,4vw,48px);color:var(--plum);font-weight:550}
.editorial-prose .chapter-word-count{font-size:.86rem;color:var(--muted);font-style:italic}


.editorial-prose iframe,.editorial-prose video,.editorial-prose embed,.editorial-prose object{max-width:100%}
.editorial-prose table{display:block;width:100%;max-width:100%;overflow-x:auto;border-collapse:collapse}
.editorial-prose pre{max-width:100%;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere}
.editorial-prose code{overflow-wrap:anywhere}

/* ---------- Motion ---------- */
@keyframes slowSpin{to{transform:rotate(360deg)}}
@keyframes orbitPulse{0%,100%{transform:scale(.98);opacity:.45}50%{transform:scale(1.03);opacity:1}}
@keyframes scrollCue{0%{transform:translateY(0);opacity:0}25%{opacity:1}75%{opacity:1}100%{transform:translateY(27px);opacity:0}}

/* ---------- Tablet ---------- */
@media(max-width:1180px){
  .container{width:min(var(--container),calc(100% - 48px))}
  .main-nav-links{gap:0}.nav-link{padding-inline:7px;font-size:.74rem}.nav-link:after{left:7px;right:7px}
  .home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(400px,.72fr);gap:50px}
  .home-hero-copy h1{font-size:clamp(5rem,10vw,8.5rem)}
  .hero-visual-shell{width:min(540px,43vw)}
  .welcome-layout{grid-template-columns:130px minmax(0,1fr);gap:70px}
  .welcome-copy{grid-template-columns:1fr;gap:38px}.welcome-prose{max-width:760px}
  .featured-story{grid-template-columns:minmax(0,1.05fr) minmax(330px,.72fr)}
  .book-experience-grid{grid-template-columns:minmax(280px,.62fr) minmax(0,1.2fr);gap:70px}
  .newsletter-stage-inner{grid-template-columns:1fr minmax(390px,.72fr)}
  .footer-shell{grid-template-columns:1fr}.footer-brand{max-width:650px}
}

@media(max-width:1020px){
  .site-header{padding:10px 0}.site-header.is-scrolled{padding:7px 0}
  .nav-shell{min-height:62px}
  .menu-toggle{display:flex;position:relative;z-index:1002}
  .main-nav{position:fixed;inset:0;z-index:1001;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:26px;padding:110px 28px 38px;background:rgba(14,7,23,.97);backdrop-filter:blur(28px);opacity:0;visibility:hidden;transform:translateY(-18px);transition:opacity .3s,visibility .3s,transform .3s}
  .main-nav.open{opacity:1;visibility:visible;transform:none}
  .main-nav-links{display:grid;gap:0;width:min(100%,650px);margin-inline:auto;border-top:1px solid rgba(255,255,255,.15)}
  .nav-link{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.15);color:#fff!important;font-size:clamp(1.35rem,4vw,2rem);font-weight:700}
  .nav-link:after{left:0;right:auto;bottom:10px;width:80px}
  .subscribe-pill{width:min(100%,650px);margin-inline:auto;min-height:54px;background:var(--amber)!important;color:var(--night)!important}
  .home-hero-grid{grid-template-columns:1fr;padding-top:155px;padding-bottom:110px}
  .home-hero-copy{max-width:920px}
  .home-hero-copy h1{font-size:clamp(5.4rem,15vw,9rem)}
  .hero-links{max-width:720px}
  .hero-visual-shell{width:min(610px,80vw);margin-inline:auto}
  .premium-hero{min-height:auto}
  .welcome-layout{grid-template-columns:1fr}.section-index{position:relative;top:auto;width:160px}
  .featured-story{grid-template-columns:1fr;min-height:0}.featured-story-media{aspect-ratio:1.55}.featured-story-copy:before{display:none}
  .organisation-line{grid-template-columns:repeat(2,minmax(0,1fr))}
  .book-experience-grid{grid-template-columns:1fr}.book-intro{position:relative;top:auto;max-width:720px}.chapter-timeline{max-width:900px}
  .newsletter-stage-inner{grid-template-columns:1fr}.newsletter-form-wrap{max-width:700px}
  .inner-hero-grid,.about-hero-grid,.memoir-hero-grid,.article-hero-grid,.chapter-hero-grid,.newsletter-page-inner{grid-template-columns:1fr}
  .inner-hero-action{justify-self:start}
  .inner-hero-aside{justify-items:start}.resource-hero-emblem,.event-hero-calendar,.news-hero-art,.contact-hero-aside{width:min(360px,66vw)}
  .about-hero-emblem{justify-self:start;width:min(420px,65vw);margin-top:20px}
  .about-story-grid{grid-template-columns:1fr}.about-story-label{position:relative;top:auto;max-width:720px}
  .memoir-art-stack{width:min(720px,100%);margin-inline:auto}
  .article-hero-image,.chapter-hero-art{justify-self:start;width:min(520px,75vw)}
  .article-reading-grid,.chapter-reading-grid{grid-template-columns:1fr;justify-content:stretch}.article-side,.chapter-side-nav{position:relative;top:auto;max-width:760px}.article-body,.chapter-body{max-width:var(--reading)}
  .chapter-side-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;border-top:0}.chapter-side-nav>b{grid-column:1/-1}.chapter-side-nav>a{border:1px solid var(--line);border-radius:16px;padding:14px}
  .contact-grid{grid-template-columns:1fr}.contact-copy{position:relative;top:auto;max-width:760px}.contact-form-panel{max-width:850px}
  .footer-nav-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* ---------- Mobile ---------- */
@media(max-width:760px){
  :root{--radius-lg:38px;--section-pad:86px}
  .container{width:calc(100% - 32px)}
  .section-tight{padding:72px 0}
  h1{font-size:clamp(3.2rem,15vw,5.2rem)}
  h2{font-size:clamp(2.45rem,11.5vw,4.1rem)}
  .brand-copy small{display:none}
  .brand-mark{width:40px;height:40px}.brand img{width:35px;height:35px}
  .nav-shell{padding-left:10px;padding-right:8px}
  .premium-hero{border-radius:0 0 38px 38px}
  .home-hero-grid{padding-top:132px;padding-bottom:92px;gap:54px}
  .home-hero-copy h1{margin-bottom:24px;font-size:clamp(4rem,18vw,6rem);line-height:.82;overflow-wrap:normal;word-break:normal}
  .hero-location{font-size:1rem}.hero-statement{font-size:1.06rem}
  .hero-actions{display:grid;grid-template-columns:1fr;max-width:340px}.hero-actions .btn{width:100%}
  .hero-links{grid-template-columns:1fr 1fr;margin-top:32px}
  .hero-links a{white-space:normal}.hero-links a:nth-child(odd){margin-right:14px}.hero-links a:nth-child(even){margin-right:0}
  .hero-visual-shell{width:min(520px,94vw)}
  .hero-photo-one{width:29%}.hero-photo-two{width:28%}.hero-photo-three{width:30%}.hero-emblem-card{width:56%;padding:16px}
  .hero-scroll-cue{display:none}
  .welcome-stage{padding:100px 0}.welcome-layout{gap:42px}.section-index{width:145px}.welcome-copy{gap:28px}.welcome-copy h2{font-size:clamp(3.1rem,14vw,5.3rem)}.welcome-prose p{font-size:1.04rem}
  .split-heading{grid-template-columns:1fr;gap:22px}.split-heading p{justify-self:start}
  .compact-heading{align-items:flex-start;flex-direction:column}
  .featured-story-media{aspect-ratio:1.1}.featured-story-copy{padding:34px 24px}.featured-story-copy h3{font-size:clamp(2.25rem,10vw,3.5rem)}
  .story-row{grid-template-columns:38px 92px minmax(0,1fr);gap:14px;padding:24px 0}.story-row-arrow{display:none}.story-thumb{width:92px;height:86px;border-radius:16px}.story-row-copy p{display:none}.story-row-copy h3{font-size:1.27rem}
  .organisation-track{padding-inline:16px}.organisation-line{grid-template-columns:1fr}.organisation-line a{min-height:100px;padding:22px}
  .chapter-timeline-item{grid-template-columns:92px minmax(0,1fr);gap:16px;padding:24px 0 24px 28px}.chapter-image{width:92px;height:82px;border-radius:18px}.chapter-arrow{display:none}.chapter-copy p{display:none}
  .event-timeline article{grid-template-columns:1fr;gap:10px;padding:25px 0}.event-timeline article>a{justify-self:start}.events-stage:before{display:none}
  .newsletter-form-wrap{padding:10px;border-radius:28px}.signup-form,.newsletter-large-form{flex-direction:column;align-items:stretch}.signup-form input,.newsletter-large-form input,.signup-form button,.newsletter-large-form button{width:100%}
  .inner-hero{min-height:auto;padding:110px 0 94px}.inner-hero-grid{gap:44px}.inner-hero-copy h1{font-size:clamp(3.2rem,15vw,5.3rem)}.inner-hero-orbit{width:90vw;right:-50vw}
  .resource-hero-emblem,.event-hero-calendar,.news-hero-art,.contact-hero-aside{width:min(300px,78vw)}.resource-hero-emblem:after{inset:-34px}.resource-hero-emblem:before{inset:-16px}
  .about-hero-emblem{width:min(320px,76vw)}
  .purpose-river>a{grid-template-columns:42px minmax(0,1fr) 44px;gap:14px;padding:24px 0}.purpose-copy{grid-column:2}.purpose-river i{grid-column:3;grid-row:1/3;width:42px;height:42px}.purpose-river strong{font-size:1.35rem}
  .resource-filter{position:relative;top:auto;width:100%;border-radius:26px;justify-content:center}.resource-filter button{flex:1 1 auto}
  .resource-entry{grid-template-columns:38px 68px minmax(0,1fr);gap:14px;padding:24px 0}.resource-mark{width:66px;height:66px;border-radius:20px}.resource-copy p{display:none}.resource-copy h2{font-size:1.35rem}.resource-link{grid-column:3;justify-self:start;width:auto;height:auto;border-radius:0;background:transparent;color:var(--plum);margin-top:4px}.resource-entry:hover .resource-link{transform:none;background:transparent}
  .event-ledger article{grid-template-columns:38px minmax(0,1fr);gap:12px;padding:28px 0}.event-ledger time{grid-column:2}.event-ledger article>div{grid-column:2}.event-ledger article>a{grid-column:2;justify-self:start;width:auto;height:auto;border:0;border-radius:0;color:var(--plum)}.event-ledger p{display:none}
  .archive-feature{grid-template-columns:1fr;min-height:0}.archive-feature-media{aspect-ratio:1.05}.archive-feature-copy{padding:34px 24px}.archive-feature-copy h2{font-size:clamp(2.25rem,10vw,3.7rem)}
  .archive-grid{display:grid;grid-template-columns:1fr;gap:64px}.archive-item,.archive-item:nth-child(3n+1),.archive-item:nth-child(3n+2){grid-column:auto;padding-top:0}.archive-item-media,.archive-item:nth-child(3n+2) .archive-item-media{aspect-ratio:1.15;border-radius:28px}.archive-item-copy h2{font-size:2.3rem}
  .memoir-hero{min-height:auto;padding:120px 0 100px}.memoir-art-stack{min-height:390px}.memoir-art-stack figure{width:190px;height:250px;border-radius:24px}.memoir-art-stack figure:nth-child(1){left:0}.memoir-art-stack figure:nth-child(2){right:0}.memoir-art-stack figure:nth-child(3){left:28%}
  .chapter-river{gap:90px}.chapter-river-item,.chapter-river-item.is-reversed{grid-template-columns:1fr;gap:32px}.chapter-river-item.is-reversed .chapter-river-image{order:0}.chapter-river-image{aspect-ratio:1.08;border-radius:34px}.chapter-river-copy h2{font-size:clamp(2.8rem,13vw,4.5rem)}
  .article-hero,.chapter-hero{padding:100px 0}.article-hero-copy h1,.chapter-hero-copy h1{font-size:clamp(3.1rem,14vw,5.1rem)}.article-hero-image,.chapter-hero-art{width:min(100%,430px);border-radius:32px}.reading-line{top:74px}.admin-bar .reading-line{top:120px}
  .chapter-side-nav{grid-template-columns:1fr}.chapter-bottom-nav{grid-template-columns:1fr;text-align:left}.chapter-bottom-nav a:last-child{text-align:left}
  .article-body,.chapter-body{font-size:1.03rem;line-height:1.82}.article-body p:first-child:first-letter,.chapter-body p:first-child:first-letter,.about-story-copy p:first-child:first-letter{font-size:4.5em}
  .contact-method{grid-template-columns:48px minmax(0,1fr);gap:14px}.contact-method i{display:none}.contact-method-icon{width:46px;height:46px}.contact-form-panel{padding:28px 20px;border-radius:32px}.contact-form-panel form{grid-template-columns:1fr}.contact-form-panel label:nth-of-type(3),.contact-form-panel label:nth-of-type(4){grid-column:auto}.contact-form-panel .btn{grid-column:auto;width:100%}
  .newsletter-page-hero{min-height:auto;padding:110px 0 100px}.newsletter-page-form{padding:28px 20px;border-radius:32px}
  .index-list a{grid-template-columns:1fr 38px;gap:8px 16px}.index-list span,.index-list b,.index-list small{grid-column:1}.index-list i{grid-column:2;grid-row:1/4;align-self:center}
  .footer-shell{padding-top:78px}.footer-brand{grid-template-columns:82px minmax(0,1fr);gap:18px}.footer-logo-wrap{width:80px;height:80px}.footer-nav-grid{grid-template-columns:1fr 1fr}.footer-connect{grid-column:1/-1}.footer-brand h2{font-size:2.3rem}
  .back-top{right:14px;bottom:14px;width:46px;height:46px}
}

@media(max-width:430px){
  .brand-copy b{font-size:.9rem}.menu-toggle{width:44px;height:44px}
  .hero-visual-shell{width:98vw;transform:translateX(-1.5vw)}
  .hero-links{grid-template-columns:1fr}.hero-links a,.hero-links a:nth-child(odd),.hero-links a:not(:last-child){margin-right:0}
  .story-row{grid-template-columns:34px 76px minmax(0,1fr)}.story-thumb{width:76px;height:72px}.story-row-copy h3{font-size:1.14rem}
  .memoir-art-stack{min-height:330px}.memoir-art-stack figure{width:155px;height:205px}.memoir-art-stack figure:nth-child(3){left:25%}
  .footer-nav-grid{grid-template-columns:1fr}.footer-connect{grid-column:auto}
}


/* ---------- Refined responsive behaviour for hero, welcome and articles ---------- */
@media(max-width:1180px){
  .home-hero-grid{grid-template-columns:minmax(0,1fr) minmax(430px,.82fr);gap:44px}
  .hero-gallery{width:min(650px,46vw)}
  .welcome-layout{grid-template-columns:120px minmax(0,1fr);gap:54px}
  .welcome-composition{grid-template-columns:minmax(0,1fr) minmax(340px,.76fr);gap:30px}
  .welcome-letter{margin-left:-58px}
  .article-hero-grid{grid-template-columns:minmax(0,1fr) minmax(380px,.68fr);gap:60px}
  .article-cover{width:min(455px,36vw)}
  .article-reading-shell{grid-template-columns:230px minmax(0,860px);gap:58px}
}

@media(max-width:1020px){
  .home-hero-grid{grid-template-columns:1fr;padding-top:152px;padding-bottom:112px}
  .home-hero-copy{max-width:900px}
  .hero-gallery{width:min(720px,88vw);margin-inline:auto}
  .welcome-layout{grid-template-columns:1fr}.welcome-layout .section-index{position:relative;top:auto;width:160px}
  .welcome-composition{grid-template-columns:1fr;max-width:900px;margin-inline:auto}
  .welcome-heading-panel{min-height:660px}
  .welcome-letter{width:calc(100% - 70px);margin:-76px 0 0 auto}
  .article-hero-grid{grid-template-columns:1fr;gap:58px}
  .article-cover{justify-self:start;width:min(520px,74vw)}
  .article-reading-shell{grid-template-columns:1fr;justify-content:stretch;max-width:920px}
  .article-side{position:relative;top:auto;grid-template-columns:minmax(180px,.45fr) minmax(0,1fr);align-items:start;max-width:none}
  .article-side .arrow-link{grid-column:1}.article-side .article-toc{grid-column:2;grid-row:1/3}.article-side .information-notice{grid-column:1}
  .article-paper-wrap{width:100%}
}

@media(max-width:760px){
  .premium-hero{min-height:auto;border-radius:0 0 40px 40px}
  .home-hero-grid{padding-top:128px;padding-bottom:88px;gap:52px}
  .home-hero-copy h1{margin-bottom:22px;font-size:clamp(4rem,18vw,6.1rem);line-height:.82;overflow-wrap:normal;word-break:normal}
  .hero-copy-rule{width:76%;margin-bottom:22px}
  .hero-location{font-size:1rem}.hero-statement{font-size:1.05rem}
  .hero-actions{display:grid;grid-template-columns:1fr;max-width:350px}.hero-actions .btn{width:100%}
  .hero-links{grid-template-columns:1fr 1fr;margin-top:32px}.hero-links a{white-space:normal}.hero-links a:nth-child(odd){margin-right:14px}.hero-links a:nth-child(even){margin-right:0}
  .hero-gallery{width:min(620px,98vw);aspect-ratio:1.02;transform:translateX(-1vw)}
  .hero-gallery-surface{inset:5% 2% 3% 3%;border-radius:42px 22px 42px 22px}
  .hero-gallery-art-a{left:1%;top:12%;width:25%;border-radius:20px}.hero-gallery-art-b{right:0;top:7%;width:28%;border-radius:20px}.hero-gallery-art-c{right:3%;bottom:7%;width:28%;border-radius:20px}.hero-gallery-art-d{left:4%;bottom:9%;width:26%;border-radius:20px}
  .hero-logo-stage{width:50%;padding:17px}.hero-logo-stage:before{inset:-10px;box-shadow:0 0 0 8px rgba(255,255,255,.035),0 0 0 18px rgba(100,200,170,.035)}
  .hero-spectrum{left:12%;right:12%;gap:5px}.hero-spectrum i{height:6px}
  .hero-scroll-cue{display:none}
  .welcome-stage{padding:92px 0}
  .welcome-layout{gap:38px}.welcome-layout .section-index{width:145px}
  .welcome-heading-panel{min-height:610px;padding:34px 26px;border-radius:40px 18px 40px 18px}
  .welcome-heading-panel h2{font-size:clamp(3rem,13vw,4.9rem)}
  .welcome-visual{height:270px;margin-top:34px}.welcome-visual-logo{width:165px}.welcome-visual-note{width:145px;height:175px}.welcome-visual-anvil{left:30%;width:140px;height:122px}
  .welcome-letter{width:calc(100% - 20px);margin:-44px 0 0 auto;padding:42px 26px;border-radius:28px}
  .welcome-letter:before{inset:12px;border-radius:20px}.welcome-letter-accent{left:26px;right:26px}
  .welcome-prose p{font-size:1.02rem;line-height:1.8}.welcome-prose p:first-child{font-size:1.16rem}
  .article-hero{min-height:auto;padding:104px 0 96px}
  .article-hero-grid{gap:44px}.article-hero-copy h1{font-size:clamp(3.25rem,14vw,5.25rem);line-height:.92}
  .article-cover{width:min(100%,430px);justify-self:center;transform:rotate(1.5deg)}
  .article-cover-frame{border-radius:38px 18px 38px 18px}.article-cover img{border-radius:30px 14px 30px 14px}
  .reading-line{top:74px}.admin-bar .reading-line{top:120px}
  .article-reading-shell{gap:38px}
  .article-side{grid-template-columns:1fr;gap:20px}.article-side .arrow-link,.article-side .article-toc,.article-side .information-notice{grid-column:1;grid-row:auto}
  .article-paper-wrap{padding:52px 24px;border-radius:34px 16px 34px 16px}.article-paper-wrap:before{inset:12px;border-radius:25px 10px 25px 10px}.article-paper-wrap:after{left:24px;right:24px}
  .article-body{font-size:1.03rem;line-height:1.84}.article-body h2{font-size:clamp(2rem,10vw,3.25rem)}.article-body h3{font-size:clamp(1.5rem,7vw,2.2rem)}
  .article-body blockquote{margin:2em 0;padding:28px 24px 28px 30px;border-radius:0 22px 22px 0;font-size:1.14em}
  .article-body p:first-child:first-letter{font-size:4.5em}
}

@media(max-width:430px){
  .hero-gallery{width:calc(100% + 24px);max-width:none;margin-inline:-12px;left:auto;transform:none;aspect-ratio:1.04}
  .hero-gallery-art-a,.hero-gallery-art-d{left:2%}.hero-gallery-art-b,.hero-gallery-art-c{right:2%}
  .hero-logo-stage{width:52%;padding:13px}.hero-spectrum{left:10%;right:10%}
  .hero-links{grid-template-columns:1fr}.hero-links a,.hero-links a:nth-child(odd),.hero-links a:not(:last-child){margin-right:0}
  .welcome-heading-panel{min-height:560px}.welcome-visual{height:235px}.welcome-visual-logo{width:142px}.welcome-visual-note{width:120px;height:150px}.welcome-visual-anvil{width:116px;height:100px}
  .welcome-letter{width:100%;margin:-30px 0 0;padding:38px 22px}.welcome-letter-accent{left:22px;right:22px}
  .article-meta-line{gap:10px;font-size:.72rem}.article-meta-line i{width:24px}
  .article-paper-wrap{padding:46px 20px}.article-paper-wrap:after{left:20px;right:20px}
}



/* ---------- Mobile navigation and newsletter field hardening ---------- */
.newsletter-field{
  position:relative;
  flex:1 1 250px;
  min-width:0;
}
.newsletter-field-icon{
  position:absolute;
  left:18px;
  top:50%;
  z-index:2;
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  color:var(--plum);
  pointer-events:none;
  transform:translateY(-50%);
}
.newsletter-field-icon svg{
  width:100%;
  height:100%;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.signup-form .newsletter-field input,
.newsletter-large-form .newsletter-field input{
  display:block;
  width:100%;
  min-width:0;
  height:58px;
  margin:0;
  padding:0 18px 0 54px;
  border:1px solid rgba(29,22,34,.1);
  border-radius:999px;
  background:#fff;
  background-clip:padding-box;
  color:var(--ink);
  font-size:16px;
  line-height:1;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 8px 24px rgba(13,7,22,.08);
  outline:0;
  -webkit-appearance:none;
  appearance:none;
}
.signup-form .newsletter-field input::placeholder,
.newsletter-large-form .newsletter-field input::placeholder{
  color:#756c79;
  opacity:1;
}
.signup-form .newsletter-field input:focus,
.newsletter-large-form .newsletter-field input:focus{
  border-color:var(--amber);
  box-shadow:0 0 0 4px rgba(255,184,62,.2),0 12px 30px rgba(13,7,22,.12);
}
.signup-form .newsletter-field input::-webkit-contacts-auto-fill-button,
.signup-form .newsletter-field input::-webkit-credentials-auto-fill-button,
.newsletter-large-form .newsletter-field input::-webkit-contacts-auto-fill-button,
.newsletter-large-form .newsletter-field input::-webkit-credentials-auto-fill-button{
  visibility:hidden;
  display:none!important;
  pointer-events:none;
  position:absolute;
  right:0;
}

@media(max-width:1020px){
  .site-header,
  .site-header.is-scrolled,
  .home .site-header,
  .home .site-header:not(.is-scrolled){
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }
  .nav-shell,
  .home .site-header:not(.is-scrolled) .nav-shell{
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }
  .brand,
  .menu-toggle{
    position:relative;
    z-index:1004;
  }
  .main-nav{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    max-width:none!important;
    height:100dvh!important;
    min-height:100svh!important;
    margin:0!important;
    padding:
      calc(env(safe-area-inset-top,0px) + 104px)
      clamp(20px,6vw,48px)
      calc(env(safe-area-inset-bottom,0px) + 32px)!important;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    gap:22px;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    background:
      radial-gradient(circle at 82% 10%,rgba(100,200,170,.22),transparent 28%),
      radial-gradient(circle at 10% 90%,rgba(138,99,210,.25),transparent 34%),
      linear-gradient(145deg,#100719 0%,#211033 55%,#102f37 100%);
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    opacity:0;
    visibility:hidden;
    transform:translate3d(0,-14px,0);
    transition:opacity .28s var(--ease),visibility .28s,transform .28s var(--ease);
    isolation:isolate;
  }
  .main-nav:before{
    content:"";
    position:fixed;
    inset:0;
    z-index:-1;
    opacity:.12;
    pointer-events:none;
    background-image:
      linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),
      linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);
    background-size:56px 56px;
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.35));
  }
  .main-nav.open{
    opacity:1;
    visibility:visible;
    transform:none;
  }
  .main-nav-links{
    display:grid;
    width:min(100%,650px);
    margin:0 auto;
    border-top:1px solid rgba(255,255,255,.16);
  }
  .nav-link{
    display:flex;
    align-items:center;
    min-height:62px;
    width:100%;
    padding:13px 2px;
    border-bottom:1px solid rgba(255,255,255,.16);
    color:#fff!important;
    font-size:clamp(1.25rem,4.6vw,1.9rem);
    font-weight:700;
    line-height:1.12;
    white-space:normal;
  }
  .nav-link:after{
    left:2px;
    right:auto;
    bottom:10px;
    width:72px;
  }
  .subscribe-pill{
    flex:0 0 auto;
    width:min(100%,650px);
    min-height:58px;
    margin:0 auto;
    background:var(--amber)!important;
    color:var(--night)!important;
  }
  body.menu-open{
    position:fixed;
    left:0;
    right:0;
    width:100%;
    overflow:hidden;
    overscroll-behavior:none;
  }
  body.menu-open .site-header,
  body.menu-open .site-header.is-scrolled,
  body.menu-open.home .site-header:not(.is-scrolled){
    background:transparent;
    border-color:transparent;
    box-shadow:none;
  }
  body.menu-open .nav-shell,
  body.menu-open.home .site-header:not(.is-scrolled) .nav-shell{
    background:transparent;
    border-color:transparent;
    box-shadow:none;
  }
  body.menu-open .brand-copy b,
  body.menu-open .brand-copy small{
    color:#fff!important;
  }
  body.menu-open .brand-mark{
    box-shadow:0 10px 34px rgba(0,0,0,.3);
  }
  body.menu-open .menu-toggle{
    background:#fff;
  }
  body.menu-open .menu-toggle i{
    background:var(--night);
  }
}

@media(max-width:760px){
  .signup-form,
  .newsletter-large-form{
    width:100%;
    gap:12px;
  }
  .signup-form .newsletter-field,
  .newsletter-large-form .newsletter-field{
    flex:0 0 auto;
    width:100%;
  }
  .signup-form .newsletter-field input,
  .newsletter-large-form .newsletter-field input{
    height:58px;
    padding-left:52px;
  }
  .signup-form button,
  .newsletter-large-form button{
    width:100%;
    min-height:58px;
  }
  .newsletter-form-wrap{
    width:100%;
    max-width:100%;
    padding:12px;
  }
  .newsletter-page-form{
    width:100%;
    max-width:100%;
  }
  .main-nav{
    padding-top:calc(env(safe-area-inset-top,0px) + 92px)!important;
  }
}

@media(max-width:430px){
  .site-header .container{
    width:calc(100% - 24px);
  }
  .nav-shell{
    min-width:0;
    gap:12px;
  }
  .brand{
    min-width:0;
    max-width:calc(100% - 58px);
  }
  .brand-copy{
    min-width:0;
  }
  .brand-copy b{
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .main-nav{
    padding-inline:18px!important;
  }
  .nav-link{
    min-height:58px;
    font-size:1.3rem;
  }
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  [data-reveal]{opacity:1;transform:none}
}

/* ---------- v4.3 exact client front page ---------- */
.client-logo-hero{
  min-height:auto;
  padding:0;
  border-radius:0 0 72px 72px;
  background:
    radial-gradient(circle at 50% 39%,rgba(255,255,255,.15),transparent 28%),
    radial-gradient(circle at 14% 16%,rgba(138,99,210,.34),transparent 31%),
    radial-gradient(circle at 88% 18%,rgba(100,200,170,.28),transparent 28%),
    radial-gradient(circle at 50% 100%,rgba(255,184,62,.17),transparent 35%),
    linear-gradient(140deg,#100719 0%,#241035 48%,#12343b 100%);
}
.client-logo-hero .hero-weave{
  opacity:.13;
  background-size:94px 94px,94px 94px,24px 24px;
  mask-image:radial-gradient(circle at 50% 43%,#000 0%,rgba(0,0,0,.66) 45%,transparent 82%);
}
.client-hero-inner{
  position:relative;
  z-index:2;
  padding-top:clamp(138px,13vw,190px);
  padding-bottom:clamp(110px,11vw,160px);
}
.client-hero-orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none;opacity:.55}
.client-hero-orb-a{width:330px;height:330px;left:-120px;top:210px;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 0 42px rgba(138,99,210,.035),0 0 0 84px rgba(138,99,210,.025)}
.client-hero-orb-b{width:260px;height:260px;right:-80px;bottom:160px;border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 36px rgba(100,200,170,.035),0 0 0 72px rgba(100,200,170,.02)}
.client-hero-stage{
  position:relative;
  width:min(100%,1320px);
  min-height:790px;
  margin:0 auto;
  display:grid;
  place-items:center;
  isolation:isolate;
}
.client-hero-feature-grid{display:contents}
.client-hero-feature{
  position:absolute;
  z-index:4;
  width:clamp(190px,17vw,238px);
  display:grid;
  gap:13px;
  padding:13px 13px 17px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:28px;
  background:linear-gradient(155deg,rgba(255,255,255,.16),rgba(255,255,255,.055));
  color:#fff;
  box-shadow:0 30px 80px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.23);
  backdrop-filter:blur(22px);
  transition:transform .35s var(--ease),border-color .35s var(--ease),background .35s var(--ease);
}
.client-hero-feature:hover{transform:translateY(-8px) rotate(0deg)!important;border-color:rgba(255,255,255,.42);background:linear-gradient(155deg,rgba(255,255,255,.22),rgba(255,255,255,.075))}
.client-hero-feature-image{display:block;overflow:hidden;aspect-ratio:1.24;border-radius:19px;background:#fff}
.client-hero-feature-image img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--ease)}
.client-hero-feature:hover img{transform:scale(1.055)}
.client-hero-feature strong{display:block;padding:0 4px;font-size:clamp(.95rem,1.25vw,1.12rem);line-height:1.18;letter-spacing:-.025em}
.client-hero-feature-1{left:0;top:10%;transform:rotate(-5deg)}
.client-hero-feature-2{right:0;top:12%;transform:rotate(5deg)}
.client-hero-feature-3{left:3%;bottom:6%;transform:rotate(4deg)}
.client-hero-feature-4{right:2%;bottom:5%;transform:rotate(-4deg)}
.client-hero-emblem{
  position:relative;
  z-index:3;
  width:min(690px,56vw);
  aspect-ratio:1;
  display:grid;
  place-items:center;
  transform-style:preserve-3d;
  transition:transform .32s var(--ease);
}
.client-hero-emblem:before{
  content:"";
  position:absolute;
  inset:7%;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 0 0 24px rgba(255,255,255,.028),0 0 0 54px rgba(255,255,255,.018);
}
.client-hero-emblem-glow{
  position:absolute;
  inset:15%;
  border-radius:50%;
  background:conic-gradient(from 20deg,rgba(138,99,210,.62),rgba(100,200,170,.48),rgba(255,184,62,.48),rgba(243,168,184,.48),rgba(138,99,210,.62));
  filter:blur(58px);
  opacity:.62;
  animation:slowSpin 30s linear infinite;
}
.client-hero-wordmark{position:absolute;inset:0;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 10px 30px rgba(0,0,0,.25))}
.client-hero-wordmark text{
  fill:#a979d9;
  font-family:"Outfit",sans-serif;
  font-weight:800;
  font-size:60px;
  letter-spacing:.16em;
  paint-order:stroke;
  stroke:rgba(255,255,255,.12);
  stroke-width:1.2px;
}
.client-hero-wordmark-bottom{font-size:47px!important;letter-spacing:.18em!important}
.client-hero-logo-disc{
  position:relative;
  z-index:2;
  width:48%;
  aspect-ratio:1;
  display:grid;
  place-items:center;
  padding:18px;
  border-radius:50%;
  background:rgba(255,255,255,.98);
  box-shadow:0 52px 130px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.96);
  transform:translateZ(54px);
}
.client-hero-logo-disc:before{content:"";position:absolute;inset:-13px;border-radius:50%;border:1px solid rgba(255,255,255,.46)}
.client-hero-logo-disc img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;border-radius:50%}
.client-hero-logo-ring{position:absolute;inset:-7%;border-radius:50%;background:linear-gradient(135deg,rgba(169,121,217,.28),rgba(100,200,170,.22),rgba(255,184,62,.24));filter:blur(16px);z-index:-1}
.client-hero-statement{
  position:relative;
  width:min(930px,86%);
  margin:clamp(16px,2vw,30px) auto 0;
  padding:clamp(28px,3vw,42px) clamp(28px,5vw,68px);
  border:1px solid rgba(255,255,255,.22);
  border-radius:32px;
  background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.055));
  box-shadow:0 28px 80px rgba(0,0,0,.25),inset 0 1px rgba(255,255,255,.22);
  backdrop-filter:blur(22px);
  text-align:center;
}
.client-hero-statement:before{content:"";position:absolute;inset:10px;border:1px solid rgba(255,255,255,.08);border-radius:23px;pointer-events:none}
.client-hero-statement-mark{position:absolute;top:-3px;left:18%;right:18%;height:6px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,#f3a8b8,#ffb83e,#64c8aa,#8a63d2,#4ba2d7)}
.client-hero-statement p{position:relative;margin:0;color:#fff;font-size:clamp(1.16rem,2vw,1.55rem);font-weight:520;line-height:1.58;letter-spacing:-.025em}
.client-logo-hero .hero-scroll-cue{bottom:28px}

.client-welcome-stage{
  padding:clamp(108px,11vw,170px) 0;
  background:
    radial-gradient(circle at 8% 18%,rgba(138,99,210,.1),transparent 28%),
    radial-gradient(circle at 92% 82%,rgba(100,200,170,.13),transparent 27%),
    linear-gradient(180deg,#fffdf9 0%,#f4ede5 100%);
}
.client-welcome-shell{position:relative}
.client-welcome-heading{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:clamp(36px,6vw,92px);
  align-items:end;
  padding-bottom:clamp(36px,5vw,60px);
  border-bottom:1px solid rgba(42,23,53,.14);
}
.client-welcome-heading .section-index{
  position:static;
  width:auto;
  color:var(--plum);
  font-size:.79rem;
  font-weight:760;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.client-welcome-heading h2{margin:0;color:var(--night);font-size:clamp(4.4rem,9vw,9rem);line-height:.78;letter-spacing:-.075em}
.client-welcome-grid{
  display:grid;
  grid-template-columns:minmax(390px,.82fr) minmax(0,1.18fr);
  gap:clamp(42px,7vw,110px);
  align-items:center;
  padding-top:clamp(55px,7vw,95px);
}
.client-welcome-art{position:relative;min-height:680px;isolation:isolate}
.client-welcome-art:before{content:"";position:absolute;inset:7% 5% 12% 3%;border-radius:54px 24px 54px 24px;background:linear-gradient(145deg,#1c0d2b,#17383e);box-shadow:0 42px 110px rgba(41,21,52,.24);transform:rotate(-3deg);z-index:-2}
.client-welcome-art:after{content:"";position:absolute;inset:11% 1% 8% 9%;border:1px solid rgba(94,52,120,.16);border-radius:48px 22px 48px 22px;z-index:-3}
.client-welcome-art-orbit{position:absolute;left:50%;top:48%;width:72%;aspect-ratio:1;border-radius:50%;border:1px dashed rgba(255,255,255,.28);transform:translate(-50%,-50%);animation:slowSpin 32s linear infinite}
.client-welcome-art-main{position:absolute;left:7%;top:8%;width:61%;height:60%;overflow:hidden;border:10px solid #fff;border-radius:32px;box-shadow:0 28px 70px rgba(0,0,0,.3);transform:rotate(-6deg)}
.client-welcome-art-main img,.client-welcome-art-side img{width:100%;height:100%;object-fit:cover}
.client-welcome-art-side{position:absolute;right:4%;bottom:8%;width:51%;height:43%;overflow:hidden;border:10px solid #fff;border-radius:30px;box-shadow:0 28px 70px rgba(0,0,0,.3);transform:rotate(7deg)}
.client-welcome-art-logo{position:absolute;left:50%;top:52%;z-index:4;width:34%;aspect-ratio:1;padding:11px;border-radius:50%;background:#fff;box-shadow:0 24px 65px rgba(0,0,0,.32);transform:translate(-50%,-50%)}
.client-welcome-art-logo img{width:100%;height:100%;object-fit:contain;border-radius:50%}
.client-welcome-copy{
  position:relative;
  padding:clamp(44px,6vw,78px);
  border:1px solid rgba(29,22,34,.09);
  border-radius:42px 20px 42px 20px;
  background:rgba(255,255,255,.93);
  box-shadow:0 34px 95px rgba(30,15,39,.15);
  backdrop-filter:blur(18px);
}
.client-welcome-copy:before{content:"";position:absolute;inset:15px;border:1px solid rgba(94,52,120,.08);border-radius:31px 12px 31px 12px;pointer-events:none}
.client-welcome-copy .welcome-letter-accent{left:clamp(44px,6vw,78px);right:clamp(44px,6vw,78px)}
.client-welcome-copy .welcome-prose{position:relative;z-index:1}
.client-welcome-copy .welcome-prose p{font-size:clamp(1.03rem,1.4vw,1.17rem);line-height:1.84}
.client-welcome-copy .welcome-prose p:first-child{color:var(--night);font-size:clamp(1.48rem,2.4vw,2.08rem);font-weight:640;line-height:1.38;letter-spacing:-.035em}
.client-welcome-copy .welcome-prose p:last-child{margin-bottom:0}

@media(max-width:1180px){
  .client-hero-stage{min-height:720px}
  .client-hero-emblem{width:min(610px,57vw)}
  .client-hero-feature{width:190px}
  .client-welcome-grid{grid-template-columns:minmax(340px,.72fr) minmax(0,1.28fr);gap:46px}
  .client-welcome-art{min-height:610px}
}

@media(max-width:900px){
  .client-logo-hero{border-radius:0 0 48px 48px}
  .client-hero-inner{padding-top:132px;padding-bottom:112px}
  .client-hero-stage{min-height:auto;display:flex;flex-direction:column;gap:42px}
  .client-hero-emblem{order:1;width:min(620px,92vw)}
  .client-hero-feature-grid{order:2;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .client-hero-feature{position:relative;inset:auto!important;width:100%;grid-template-columns:110px minmax(0,1fr);align-items:center;padding:10px 16px 10px 10px;transform:none!important;border-radius:22px}
  .client-hero-feature-image{aspect-ratio:1.12;border-radius:15px}
  .client-hero-feature strong{padding:0;font-size:1rem}
  .client-hero-statement{width:100%;margin-top:36px}
  .client-welcome-heading{grid-template-columns:1fr;gap:18px}
  .client-welcome-heading h2{font-size:clamp(4.1rem,15vw,7rem)}
  .client-welcome-grid{grid-template-columns:1fr;gap:38px}
  .client-welcome-art{width:min(640px,100%);min-height:560px;margin-inline:auto}
}

@media(max-width:600px){
  .client-hero-inner{padding-top:116px;padding-bottom:92px}
  .client-hero-emblem{width:calc(100% + 16px);margin-inline:-8px}
  .client-hero-wordmark text{font-size:55px;letter-spacing:.12em}
  .client-hero-wordmark-bottom{font-size:43px!important;letter-spacing:.13em!important}
  .client-hero-logo-disc{width:46%;padding:11px}
  .client-hero-feature-grid{grid-template-columns:1fr;gap:13px}
  .client-hero-feature{grid-template-columns:88px minmax(0,1fr);border-radius:19px}
  .client-hero-feature-image{border-radius:13px}
  .client-hero-statement{padding:27px 22px;border-radius:25px}
  .client-hero-statement p{font-size:1.06rem;line-height:1.62}
  .client-logo-hero .hero-scroll-cue{display:none}
  .client-welcome-stage{padding:88px 0}
  .client-welcome-heading{padding-bottom:30px}
  .client-welcome-heading h2{font-size:clamp(3.8rem,20vw,5.6rem)}
  .client-welcome-grid{padding-top:44px}
  .client-welcome-art{min-height:430px}
  .client-welcome-art-main{left:3%;top:7%;width:64%;height:61%;border-width:7px;border-radius:25px}
  .client-welcome-art-side{right:2%;bottom:7%;width:54%;height:42%;border-width:7px;border-radius:23px}
  .client-welcome-art-logo{width:35%;padding:8px}
  .client-welcome-copy{padding:42px 24px;border-radius:30px 14px 30px 14px}
  .client-welcome-copy:before{inset:11px;border-radius:22px 8px 22px 8px}
  .client-welcome-copy .welcome-letter-accent{left:24px;right:24px}
  .client-welcome-copy .welcome-prose p{font-size:1.02rem;line-height:1.8}
  .client-welcome-copy .welcome-prose p:first-child{font-size:1.36rem;line-height:1.45}
}

@media(max-width:360px){
  .client-hero-wordmark text{font-size:51px;letter-spacing:.09em}
  .client-hero-wordmark-bottom{font-size:39px!important;letter-spacing:.1em!important}
  .client-hero-feature{grid-template-columns:76px minmax(0,1fr);padding-right:12px}
  .client-hero-feature strong{font-size:.94rem}
  .client-welcome-art{min-height:390px}
}

/* ==========================================================
   Version 4.4.0 — Julie's July 16 front-page refinements
   White overall hero, soft blue/lilac emblem field, revised
   curved wording, and exact shorter location tagline.
   ========================================================== */
.home .site-header:not(.is-scrolled){
  color:var(--night);
}
.home .site-header:not(.is-scrolled) .nav-shell{
  background:rgba(255,255,255,.82);
  border-color:rgba(58,36,74,.10);
  box-shadow:0 18px 48px rgba(44,22,58,.08);
  backdrop-filter:blur(22px) saturate(145%);
}
.home .site-header:not(.is-scrolled) .brand-copy b{color:var(--night)}
.home .site-header:not(.is-scrolled) .brand-copy small{color:var(--muted)}
.home .site-header:not(.is-scrolled) .nav-link{color:#5d5363}
.home .site-header:not(.is-scrolled) .nav-link:hover,
.home .site-header:not(.is-scrolled) .nav-link.active{color:var(--night)}
.home .site-header:not(.is-scrolled) .subscribe-pill{background:var(--night);color:#fff}

.client-logo-hero{
  background:
    radial-gradient(circle at 10% 16%,rgba(138,99,210,.08),transparent 25%),
    radial-gradient(circle at 90% 23%,rgba(75,162,215,.10),transparent 26%),
    linear-gradient(180deg,#ffffff 0%,#fcfaff 72%,#f8fbff 100%);
  border-radius:0 0 64px 64px;
  box-shadow:inset 0 -1px rgba(71,45,92,.08);
}
.client-logo-hero:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background-image:radial-gradient(circle at 1px 1px,rgba(94,52,120,.07) 1px,transparent 0);
  background-size:30px 30px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 82%);
  opacity:.45;
}
.client-logo-hero:after{
  background:linear-gradient(90deg,transparent,rgba(94,52,120,.15),transparent);
}
.client-logo-hero .hero-ambient span:nth-child(1){
  background:radial-gradient(circle,rgba(217,200,241,.58),transparent 68%);
}
.client-logo-hero .hero-ambient span:nth-child(2){
  background:radial-gradient(circle,rgba(198,230,247,.62),transparent 68%);
}
.client-logo-hero .hero-ambient span:nth-child(3){
  background:radial-gradient(circle,rgba(226,213,246,.45),transparent 70%);
}
.client-logo-hero .hero-weave{
  opacity:.32;
  background-image:
    linear-gradient(rgba(94,52,120,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(94,52,120,.045) 1px,transparent 1px),
    radial-gradient(circle,rgba(94,52,120,.11) 1px,transparent 1.5px);
  mask-image:radial-gradient(circle at 50% 42%,#000 0%,rgba(0,0,0,.56) 45%,transparent 84%);
}
.client-hero-orb-a{
  border-color:rgba(138,99,210,.14);
  box-shadow:0 0 0 42px rgba(138,99,210,.025),0 0 0 84px rgba(138,99,210,.018);
}
.client-hero-orb-b{
  border-color:rgba(75,162,215,.16);
  box-shadow:0 0 0 36px rgba(75,162,215,.025),0 0 0 72px rgba(75,162,215,.018);
}
.client-hero-stage:before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  z-index:0;
  width:min(760px,62vw);
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:
    radial-gradient(circle at 38% 30%,rgba(255,255,255,.96),rgba(255,255,255,.28) 34%,transparent 35%),
    linear-gradient(145deg,rgba(226,236,255,.90),rgba(229,213,249,.88));
  box-shadow:
    0 42px 120px rgba(86,55,111,.16),
    inset 0 0 0 1px rgba(109,75,135,.10),
    0 0 0 26px rgba(224,234,252,.32),
    0 0 0 54px rgba(229,213,249,.19);
}
.client-hero-feature{
  border-color:rgba(71,45,92,.10);
  background:rgba(255,255,255,.88);
  color:var(--night);
  box-shadow:0 24px 64px rgba(50,28,65,.13),inset 0 1px rgba(255,255,255,.95);
}
.client-hero-feature:hover{
  border-color:rgba(94,52,120,.24);
  background:#fff;
  box-shadow:0 30px 72px rgba(50,28,65,.18),inset 0 1px #fff;
}
.client-hero-feature-image{box-shadow:inset 0 0 0 1px rgba(71,45,92,.08)}
.client-hero-emblem:before{
  border-color:rgba(94,52,120,.14);
  box-shadow:0 0 0 24px rgba(138,99,210,.04),0 0 0 54px rgba(75,162,215,.03);
}
.client-hero-emblem-glow{
  background:conic-gradient(from 20deg,rgba(173,134,219,.42),rgba(143,202,232,.34),rgba(214,190,239,.42),rgba(173,134,219,.42));
  filter:blur(62px);
  opacity:.54;
}
.client-hero-wordmark{filter:drop-shadow(0 8px 22px rgba(74,42,98,.12))}
.client-hero-wordmark text{
  fill:#673980;
  stroke:rgba(255,255,255,.78);
  stroke-width:1.6px;
}
.client-hero-wordmark-bottom{
  font-size:41px!important;
  letter-spacing:.105em!important;
}
.client-hero-logo-disc{
  background:#fff;
  box-shadow:0 42px 100px rgba(67,39,88,.20),inset 0 0 0 1px rgba(94,52,120,.08);
}
.client-hero-logo-disc:before{border-color:rgba(94,52,120,.15)}
.client-hero-logo-ring{
  background:linear-gradient(135deg,rgba(138,99,210,.22),rgba(75,162,215,.18),rgba(217,200,241,.22));
  filter:blur(17px);
}
.client-hero-tagline{
  position:relative;
  z-index:4;
  width:max-content;
  max-width:100%;
  margin:clamp(4px,1vw,12px) auto 0;
  padding:10px 18px;
  border:1px solid rgba(94,52,120,.12);
  border-radius:999px;
  background:rgba(255,255,255,.82);
  color:#5e3478;
  box-shadow:0 12px 34px rgba(72,43,93,.08);
  font-size:clamp(.86rem,1.2vw,1rem);
  font-weight:750;
  letter-spacing:.035em;
  text-align:center;
}
.client-hero-statement{
  width:min(930px,86%);
  margin-top:clamp(26px,3vw,42px);
  border-color:rgba(94,52,120,.12);
  background:rgba(255,255,255,.88);
  box-shadow:0 28px 80px rgba(64,37,83,.12),inset 0 1px rgba(255,255,255,.96);
  backdrop-filter:blur(22px);
}
.client-hero-statement:before{border-color:rgba(94,52,120,.07)}
.client-hero-statement p{color:#34253d}
.client-logo-hero .hero-scroll-cue{border-color:rgba(94,52,120,.18)}
.client-logo-hero .hero-scroll-cue span{background:var(--plum)}

@media(max-width:900px){
  .client-logo-hero{border-radius:0 0 46px 46px}
  .client-hero-stage:before{width:min(720px,88vw)}
  .client-hero-feature{
    background:rgba(255,255,255,.92);
    border-color:rgba(71,45,92,.10);
  }
  .client-hero-tagline{margin-top:8px}
}

@media(max-width:600px){
  .home .site-header:not(.is-scrolled) .nav-shell{background:rgba(255,255,255,.90)}
  .client-logo-hero{border-radius:0 0 34px 34px}
  .client-hero-stage:before{
    top:20%;
    width:calc(100% + 30px);
    transform:translate(-50%,0);
    box-shadow:0 28px 72px rgba(86,55,111,.13),inset 0 0 0 1px rgba(109,75,135,.08),0 0 0 14px rgba(224,234,252,.25);
  }
  .client-hero-wordmark text{font-size:53px;letter-spacing:.105em}
  .client-hero-wordmark-bottom{font-size:34px!important;letter-spacing:.055em!important}
  .client-hero-tagline{
    width:fit-content;
    margin-top:6px;
    padding:9px 15px;
    font-size:.82rem;
  }
  .client-hero-statement{
    width:100%;
    background:#fff;
    box-shadow:0 22px 60px rgba(64,37,83,.11);
  }
}

@media(max-width:360px){
  .client-hero-wordmark text{font-size:48px;letter-spacing:.075em}
  .client-hero-wordmark-bottom{font-size:31px!important;letter-spacing:.035em!important}
  .client-hero-tagline{font-size:.78rem;padding-inline:13px}
}


/* ==========================================================
   Version 4.5.0 — Front-page copy visibility + exact blog extracts
   Julie's Mission Statement and Welcome text now sit visibly beneath
   the logo, while each supplied chapter artwork is paired with Julie's
   original opening wording on the Being Forgotten page.
   ========================================================== */
.client-hero-inner{
  padding-top:clamp(118px,10vw,154px);
  padding-bottom:clamp(72px,7vw,104px);
}
.client-hero-stage{
  min-height:clamp(610px,64vw,700px);
}
.client-hero-emblem{
  width:min(610px,52vw);
}
.client-hero-feature{
  width:clamp(176px,15vw,218px);
}
.client-hero-statement.client-mission-statement{
  display:grid;
  justify-items:center;
  gap:12px;
  margin-top:clamp(18px,2vw,28px);
  padding-top:clamp(30px,3vw,40px);
}
.client-mission-label{
  position:relative;
  z-index:2;
  color:#673980;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.17em;
  line-height:1;
  text-transform:uppercase;
}
.client-mission-statement p{
  max-width:790px;
}

.client-welcome-stage{
  padding:clamp(76px,8vw,112px) 0;
}
.client-welcome-heading{
  grid-template-columns:120px minmax(0,1fr);
  gap:clamp(28px,4vw,58px);
  padding-bottom:clamp(28px,3.6vw,44px);
}
.client-welcome-heading h2{
  font-size:clamp(3.8rem,7vw,7rem);
  line-height:.86;
}
.client-welcome-grid.client-welcome-grid-copy-first{
  grid-template-columns:minmax(0,1.16fr) minmax(360px,.84fr);
  gap:clamp(38px,6vw,82px);
  align-items:start;
  padding-top:clamp(42px,5vw,66px);
}
.client-welcome-grid-copy-first .client-welcome-copy{order:1}
.client-welcome-grid-copy-first .client-welcome-art{order:2;min-height:520px}
.client-welcome-grid-copy-first .client-welcome-art:before{inset:8% 4% 11% 5%}
.client-welcome-grid-copy-first .client-welcome-copy{
  padding:clamp(40px,5vw,66px);
}
.client-welcome-grid-copy-first .client-welcome-copy .welcome-prose p{
  font-size:clamp(1rem,1.25vw,1.12rem);
  line-height:1.78;
}
.client-welcome-grid-copy-first .client-welcome-copy .welcome-prose p:first-child{
  font-size:clamp(1.34rem,2vw,1.8rem);
  line-height:1.42;
}

.chapter-archive-with-extracts{
  background:
    radial-gradient(circle at 8% 10%,rgba(138,99,210,.08),transparent 24%),
    radial-gradient(circle at 94% 72%,rgba(75,162,215,.09),transparent 28%),
    linear-gradient(180deg,#fff 0%,#fbf8ff 100%);
}
.chapter-extracts-heading{
  margin-bottom:clamp(72px,9vw,120px);
}
.chapter-river-extracts{
  gap:clamp(100px,12vw,168px);
}
.chapter-river-item-extract{
  grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);
  gap:clamp(48px,7vw,102px);
  align-items:start;
}
.chapter-river-item-extract.is-reversed{
  grid-template-columns:minmax(420px,1.08fr) minmax(0,.92fr);
}
.chapter-river-item-extract .chapter-river-image{
  position:sticky;
  top:130px;
  aspect-ratio:1.14;
}
.chapter-river-item-extract .chapter-river-copy h2{
  margin-bottom:24px;
  font-size:clamp(3rem,5vw,5.7rem);
}
.chapter-exact-extract{
  position:relative;
  margin-bottom:30px;
  padding-left:25px;
  border-left:3px solid rgba(103,57,128,.24);
}
.chapter-exact-extract p{
  margin:0 0 1.05em;
  color:#514858;
  font-size:clamp(1rem,1.18vw,1.1rem);
  line-height:1.78;
}
.chapter-exact-extract p:last-child{margin-bottom:0}
.chapter-river-item-extract .arrow-link{
  margin-top:4px;
}

.archive-feature-copy p,
.archive-item-copy p{
  white-space:normal;
  overflow-wrap:anywhere;
}
.archive-item-copy p{
  display:block;
  max-height:none;
}

@media(max-width:1180px){
  .client-hero-stage{min-height:640px}
  .client-hero-emblem{width:min(560px,53vw)}
  .client-welcome-grid.client-welcome-grid-copy-first{
    grid-template-columns:minmax(0,1.14fr) minmax(320px,.86fr);
    gap:42px;
  }
  .client-welcome-grid-copy-first .client-welcome-art{min-height:480px}
  .chapter-river-item-extract,
  .chapter-river-item-extract.is-reversed{
    grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);
    gap:52px;
  }
}

@media(max-width:900px){
  .client-hero-inner{padding-top:118px;padding-bottom:82px}
  .client-hero-stage{min-height:auto}
  .client-hero-emblem{width:min(560px,90vw)}
  .client-hero-statement.client-mission-statement{margin-top:20px}
  .client-welcome-heading{grid-template-columns:1fr;gap:12px}
  .client-welcome-heading h2{font-size:clamp(3.8rem,13vw,6rem)}
  .client-welcome-grid.client-welcome-grid-copy-first{grid-template-columns:1fr;gap:42px}
  .client-welcome-grid-copy-first .client-welcome-copy{order:1}
  .client-welcome-grid-copy-first .client-welcome-art{order:2;width:min(620px,100%);min-height:500px;margin-inline:auto}
  .chapter-river-item-extract,
  .chapter-river-item-extract.is-reversed{
    grid-template-columns:1fr;
    gap:34px;
  }
  .chapter-river-item-extract.is-reversed .chapter-river-image{order:0}
  .chapter-river-item-extract .chapter-river-image{position:relative;top:auto;aspect-ratio:1.25}
}

@media(max-width:600px){
  .client-hero-inner{padding-top:104px;padding-bottom:68px}
  .client-hero-feature-grid{margin-top:2px}
  .client-hero-statement.client-mission-statement{padding:28px 20px 26px;gap:10px}
  .client-mission-label{font-size:.68rem;letter-spacing:.14em}
  .client-welcome-stage{padding:70px 0}
  .client-welcome-heading{padding-bottom:24px}
  .client-welcome-heading h2{font-size:clamp(3.4rem,18vw,4.9rem)}
  .client-welcome-grid.client-welcome-grid-copy-first{padding-top:34px;gap:34px}
  .client-welcome-grid-copy-first .client-welcome-copy{padding:36px 22px}
  .client-welcome-grid-copy-first .client-welcome-art{min-height:410px}
  .chapter-extracts-heading{margin-bottom:58px}
  .chapter-river-extracts{gap:82px}
  .chapter-river-item-extract .chapter-river-copy h2{font-size:clamp(2.7rem,14vw,4.1rem)}
  .chapter-exact-extract{padding-left:18px}
  .chapter-exact-extract p{font-size:1rem;line-height:1.72}
}

@media(max-width:360px){
  .client-welcome-grid-copy-first .client-welcome-copy{padding:32px 18px}
  .client-welcome-grid-copy-first .client-welcome-art{min-height:370px}
  .chapter-exact-extract{padding-left:14px}
}

/* v4.5 visibility refinement after viewport review */
@media(min-width:901px){
  .client-hero-stage{min-height:590px}
  .client-hero-emblem{width:min(540px,48vw)}
  .client-hero-feature{width:clamp(166px,14vw,198px)}
  .client-hero-feature-1,.client-hero-feature-2{top:7%}
  .client-hero-feature-3,.client-hero-feature-4{bottom:3%}
}

@media(max-width:600px){
  .client-hero-emblem{width:min(340px,88vw);margin-inline:auto}
  .client-hero-stage{gap:24px}
  .client-hero-feature-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .client-hero-feature{
    grid-template-columns:58px minmax(0,1fr);
    min-height:80px;
    padding:8px;
    border-radius:17px;
  }
  .client-hero-feature-image{border-radius:11px}
  .client-hero-feature strong{font-size:.82rem;line-height:1.12}
}

@media(max-width:360px){
  .client-hero-emblem{width:min(318px,88vw)}
  .client-hero-feature{grid-template-columns:52px minmax(0,1fr);min-height:72px}
  .client-hero-feature strong{font-size:.76rem}
}

/* Keep the two client-written front-page pieces close to the opening view. */
@media(min-width:901px){
  .client-hero-inner{padding-bottom:58px}
  .client-hero-stage{min-height:520px}
  .client-hero-emblem{width:min(500px,45vw)}
}
@media(max-width:600px){
  .client-hero-inner{padding-top:94px;padding-bottom:52px}
  .client-hero-emblem{width:min(318px,84vw)}
  .client-hero-stage{gap:18px}
  .client-hero-feature{min-height:72px}
  .client-hero-statement.client-mission-statement{padding-top:24px;padding-bottom:22px}
}
.client-welcome-stage{padding-top:44px}
@media(max-width:600px){.client-welcome-stage{padding-top:52px}}


/* ==========================================================
   Version 4.5.1 — complete curved hero wording
   Keeps both endpoint letters visible across Chromium, Safari
   and Firefox SVG textPath rendering.
   ========================================================== */
.client-hero-wordmark-bottom{
  font-size:39px!important;
  letter-spacing:.075em!important;
}
@media(max-width:600px){
  .client-hero-wordmark-bottom{font-size:32px!important;letter-spacing:.035em!important}
}
@media(max-width:360px){
  .client-hero-wordmark-bottom{font-size:29px!important;letter-spacing:.02em!important}
}

/* ==========================================================
   Version 4.8.0 — icon-led content hubs + exact Facebook content
   The location tagline sits above the logo composition so the
   Mission Statement is the first content directly below the logo,
   followed immediately by Julie's Welcome piece.
   ========================================================== */
.client-hero-tagline-before{
  margin:0 auto clamp(18px,2.2vw,30px);
}
.client-hero-stage + .client-mission-statement{
  margin-top:clamp(12px,1.5vw,20px);
}
.client-logo-hero{
  border-radius:0;
}
.client-welcome-stage{
  margin-top:0;
  padding-top:clamp(52px,5.5vw,78px);
}
.about-story-label-heading-only{
  align-self:start;
}
.about-story-label-heading-only h2{
  margin-bottom:0;
}

@media(max-width:900px){
  .client-hero-tagline-before{
    margin-bottom:18px;
  }
  .client-hero-stage + .client-mission-statement{
    margin-top:16px;
  }
}

@media(max-width:600px){
  .client-hero-tagline-before{
    margin-top:0;
    margin-bottom:14px;
  }
  .client-hero-stage + .client-mission-statement{
    margin-top:12px;
  }
  .client-welcome-stage{
    padding-top:40px;
  }
}


/* ==========================================================
   Version 4.7.0 — client-led content hubs and pale site palette
   - Removes the visible Mission Statement label.
   - Uses pale blue, white and mauve throughout the public site.
   - Groups Facebook-style content into clear icon-led sections.
   ========================================================== */
:root{
  --dls-pale-blue:#eaf6fb;
  --dls-pale-blue-2:#dceff8;
  --dls-pale-mauve:#f1e8f6;
  --dls-pale-mauve-2:#e4d3ee;
  --dls-soft-white:#fffefe;
  --dls-purple:#643779;
  --dls-purple-deep:#3d2052;
  --dls-blue:#5a9fc2;
  --dls-hub-line:rgba(83,54,104,.13);
  --dls-hub-shadow:0 30px 80px rgba(70,45,88,.12);
}

body{
  background:
    radial-gradient(circle at 4% 7%,rgba(184,219,237,.42),transparent 24rem),
    radial-gradient(circle at 96% 22%,rgba(220,197,234,.42),transparent 28rem),
    linear-gradient(180deg,#fff 0%,#f9fcff 34%,#fbf8fd 66%,#f2f8fb 100%);
}
main{background:transparent}
.client-mission-label{display:none!important}
.client-hero-statement.client-mission-statement{padding-top:clamp(26px,3vw,38px)}
.client-hero-statement-mark{display:block}

/* Calm, light page surfaces rather than large dark-purple fields. */
.client-logo-hero,
.refined-light-hero,
.memoir-hero-pale{
  color:var(--ink);
  background:
    radial-gradient(circle at 50% 45%,rgba(255,255,255,.98) 0 18%,transparent 42%),
    radial-gradient(circle at 23% 20%,rgba(204,229,241,.68),transparent 32%),
    radial-gradient(circle at 79% 22%,rgba(226,207,238,.72),transparent 34%),
    linear-gradient(145deg,#fff 0%,#edf7fc 47%,#f3eaf7 100%)!important;
}
.client-logo-hero:before{
  background:
    linear-gradient(rgba(100,55,121,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(100,55,121,.045) 1px,transparent 1px)!important;
  background-size:54px 54px!important;
}
.client-logo-hero .hero-ambient span:nth-child(1){background:rgba(122,190,218,.32)!important}
.client-logo-hero .hero-ambient span:nth-child(2){background:rgba(204,168,224,.32)!important}
.client-logo-hero .hero-ambient span:nth-child(3){background:rgba(255,255,255,.56)!important}
.client-hero-tagline{color:var(--dls-purple-deep)!important;background:rgba(255,255,255,.78)!important;border-color:rgba(100,55,121,.14)!important}
.client-hero-statement{background:rgba(255,255,255,.82)!important;border-color:rgba(100,55,121,.13)!important;color:var(--ink)!important;box-shadow:0 24px 66px rgba(70,45,88,.12)!important}
.client-hero-statement p{color:#4e4254!important}
.client-hero-feature{background:rgba(255,255,255,.85)!important;color:var(--ink)!important;border-color:rgba(100,55,121,.12)!important;box-shadow:0 18px 50px rgba(71,45,89,.1)!important}
.client-hero-feature strong{color:var(--dls-purple-deep)!important}
.client-hero-wordmark text{fill:var(--dls-purple)!important}
.client-hero-emblem-glow{background:radial-gradient(circle,rgba(203,226,239,.94),rgba(229,212,239,.58) 43%,transparent 71%)!important}
.client-hero-logo-disc{background:rgba(255,255,255,.92)!important;box-shadow:0 28px 85px rgba(77,46,96,.18)!important}

.site-header{background:rgba(255,255,255,.84)}
.home .site-header:not(.is-scrolled){color:var(--ink)}
.home .site-header:not(.is-scrolled) .nav-shell{background:rgba(255,255,255,.78);border-color:rgba(93,52,120,.12);box-shadow:0 16px 50px rgba(65,39,82,.08)}
.home .site-header:not(.is-scrolled) .brand-copy b{color:var(--ink)}
.home .site-header:not(.is-scrolled) .brand-copy small{color:var(--muted)}
.home .site-header:not(.is-scrolled) .nav-link{color:#514956}
.home .site-header:not(.is-scrolled) .nav-link:hover,
.home .site-header:not(.is-scrolled) .nav-link.active{color:var(--dls-purple)}

.client-welcome-stage{
  background:
    radial-gradient(circle at 10% 20%,rgba(220,239,247,.72),transparent 26%),
    radial-gradient(circle at 92% 72%,rgba(232,215,241,.7),transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.95),rgba(248,251,254,.96));
}
.client-welcome-copy{background:rgba(255,255,255,.9)!important;border-color:rgba(93,52,120,.1)!important;box-shadow:var(--dls-hub-shadow)!important}
.client-welcome-heading .section-index{color:var(--dls-purple)}

/* -------------------- Home content hub -------------------- */
.content-hub-stage{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 16%,rgba(197,226,240,.72),transparent 26%),
    radial-gradient(circle at 89% 31%,rgba(228,207,239,.72),transparent 29%),
    radial-gradient(circle at 45% 95%,rgba(215,235,244,.58),transparent 28%),
    linear-gradient(180deg,#f9fcff 0%,#fff 47%,#faf6fc 100%);
}
.content-hub-ambient{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(91,55,111,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(91,55,111,.035) 1px,transparent 1px);background-size:68px 68px;mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 88%,transparent)}
.content-hub-grid{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(22px,2.4vw,36px);align-items:start}
.content-hub{
  position:relative;
  min-width:0;
  overflow:hidden;
  border:1px solid var(--dls-hub-line);
  border-radius:clamp(26px,3vw,44px);
  background:rgba(255,255,255,.84);
  box-shadow:var(--dls-hub-shadow);
  backdrop-filter:blur(20px);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);
}
.content-hub:hover{transform:translateY(-5px);box-shadow:0 40px 100px rgba(70,45,88,.16);border-color:rgba(100,55,121,.23)}
.content-hub:before{content:"";position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,var(--dls-blue),var(--violet),var(--rose));opacity:.86}
.content-hub-book{grid-column:span 8;padding:clamp(28px,3.4vw,48px)}
.content-hub-events{grid-column:span 4;padding:clamp(28px,3.4vw,44px);background:linear-gradient(155deg,rgba(236,247,252,.96),rgba(255,255,255,.88))}
.content-hub-support{grid-column:span 5;padding:clamp(28px,3.4vw,44px);background:linear-gradient(155deg,rgba(246,239,249,.96),rgba(255,255,255,.9))}
.content-hub-benefits{grid-column:span 7;padding:clamp(28px,3.4vw,44px);background:linear-gradient(155deg,rgba(239,248,252,.96),rgba(250,243,252,.9))}
.content-hub-information{grid-column:span 6;padding:clamp(28px,3.4vw,44px)}
.content-hub-carers{grid-column:span 6;padding:clamp(28px,3.4vw,44px);background:linear-gradient(155deg,rgba(246,239,249,.95),rgba(255,255,255,.9))}
.content-hub-heading{position:relative;z-index:2;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:clamp(24px,3vw,38px)}
.content-hub-heading small{display:block;margin-bottom:5px;color:var(--mint-deep);font-size:.69rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.content-hub-heading strong{display:block;color:var(--dls-purple-deep);font-size:clamp(1.45rem,2.4vw,2.4rem);line-height:1;letter-spacing:-.04em}
.content-hub-heading>i{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(100,55,121,.08);color:var(--dls-purple);font-style:normal;font-size:1.1rem;transition:transform .3s,background .3s,color .3s}
.content-hub-heading:hover>i{transform:rotate(10deg);background:var(--dls-purple);color:#fff}
.content-hub-icon{display:grid;place-items:center;width:62px;height:62px;flex:0 0 auto;border-radius:20px;background:linear-gradient(145deg,#fff,var(--dls-pale-mauve));box-shadow:0 15px 34px rgba(81,50,99,.12)}
.content-hub-icon svg{width:34px;height:34px;fill:none;stroke:var(--dls-purple);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.content-hub-chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.content-hub-chapter{display:grid;grid-template-rows:170px auto;min-width:0;overflow:hidden;border-radius:24px;background:rgba(255,255,255,.88);border:1px solid rgba(100,55,121,.1);transition:transform .3s,box-shadow .3s}
.content-hub-chapter:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(75,46,92,.14)}
.content-hub-chapter img{width:100%;height:100%;object-fit:cover}
.content-hub-chapter span{display:grid;gap:4px;padding:18px}
.content-hub-chapter small{color:var(--mint-deep);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.66rem}
.content-hub-chapter strong{font-size:1.1rem;color:var(--dls-purple-deep);line-height:1.2}
.content-hub-list{display:grid;border-top:1px solid var(--dls-hub-line)}
.content-hub-list>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 3px;border-bottom:1px solid var(--dls-hub-line);color:#4d4252;font-weight:690;transition:color .25s,padding .25s}
.content-hub-list>a:after{content:"↗";color:var(--dls-purple)}
.content-hub-list>a:hover{padding-left:8px;color:var(--dls-purple)}
.event-hub-list>a{display:grid;grid-template-columns:88px minmax(0,1fr) auto}
.event-hub-list time{font-size:.78rem;color:var(--mint-deep);font-weight:800}
.content-hub-facebook-link{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding:17px 20px;border-radius:18px;background:var(--dls-purple);color:#fff;font-weight:750}
.content-hub-facebook-link:hover{background:var(--dls-purple-deep)}
.content-hub-pills{display:flex;flex-wrap:wrap;gap:11px}
.content-hub-pills a{display:inline-flex;align-items:center;min-height:45px;padding:8px 16px;border:1px solid rgba(100,55,121,.13);border-radius:999px;background:rgba(255,255,255,.82);color:#4d4252;font-weight:680;line-height:1.2;transition:background .25s,color .25s,transform .25s}
.content-hub-pills a:hover{background:var(--dls-purple);color:#fff;transform:translateY(-2px)}
.benefit-hub-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.benefit-hub-items>a{display:grid;grid-template-columns:82px minmax(0,1fr);gap:18px;align-items:start;padding:20px;border:1px solid rgba(100,55,121,.1);border-radius:24px;background:rgba(255,255,255,.82);transition:transform .3s,box-shadow .3s}
.benefit-hub-items>a:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(73,45,91,.12)}
.benefit-hub-items strong{display:block;margin-bottom:8px;color:var(--dls-purple-deep);font-size:1.08rem;line-height:1.25}
.benefit-hub-items p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;margin:0;font-size:.9rem;line-height:1.55}
.benefit-hub-art{display:block;width:82px;aspect-ratio:1;border-radius:22px;background-color:var(--dls-pale-blue);position:relative;overflow:hidden}
.benefit-hub-art:before,.benefit-hub-art:after{content:"";position:absolute}
.benefit-hub-art-document:before{inset:16px 20px;border:2px solid var(--dls-purple);border-radius:6px;background:rgba(255,255,255,.75)}
.benefit-hub-art-document:after{left:29px;right:29px;top:31px;height:2px;background:var(--dls-purple);box-shadow:0 9px 0 var(--dls-purple),0 18px 0 var(--dls-purple)}
.benefit-hub-art-car:before{left:15px;right:15px;top:31px;height:22px;border:2px solid var(--dls-purple);border-radius:10px 10px 7px 7px;background:rgba(255,255,255,.76)}
.benefit-hub-art-car:after{left:24px;bottom:20px;width:9px;height:9px;border-radius:50%;background:var(--dls-purple);box-shadow:25px 0 0 var(--dls-purple)}

/* -------------------- Icon-led support page -------------------- */
.resource-jump-nav{position:sticky;top:92px;z-index:30;padding:12px 0;background:rgba(255,255,255,.84);border-block:1px solid rgba(100,55,121,.09);backdrop-filter:blur(18px)}
.resource-jump-nav .container{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;padding-block:2px}.resource-jump-nav .container::-webkit-scrollbar{display:none}
.resource-jump-nav a{flex:0 0 auto;padding:9px 15px;border-radius:999px;background:var(--dls-pale-mauve);color:var(--dls-purple-deep);font-size:.78rem;font-weight:760}
.resource-group-stage{position:relative;background:rgba(255,255,255,.55);border-bottom:1px solid rgba(100,55,121,.07)}
.resource-group-stage:nth-of-type(even){background:linear-gradient(135deg,rgba(235,247,252,.78),rgba(246,239,249,.72))}
.resource-group-layout{display:grid;grid-template-columns:minmax(230px,.38fr) minmax(0,1fr);gap:clamp(48px,8vw,120px);align-items:start}
.resource-group-heading{position:sticky;top:170px;display:grid;grid-template-columns:auto 1fr;gap:12px 18px;align-items:center}
.resource-group-number{grid-column:1/-1;color:var(--mint-deep);font-weight:800;letter-spacing:.16em;font-size:.72rem}
.resource-group-icon{display:grid;place-items:center;width:66px;height:66px;border-radius:22px;background:linear-gradient(145deg,#fff,var(--dls-pale-mauve));box-shadow:0 18px 45px rgba(75,47,92,.11)}
.resource-group-icon svg{width:36px;height:36px;fill:none;stroke:var(--dls-purple);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.resource-group-heading h2{margin:0;font-size:clamp(2.15rem,4.2vw,4.7rem);color:var(--dls-purple-deep)}
.resource-name-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.resource-name-grid>a,.resource-name-static{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:88px;padding:20px 22px;border:1px solid rgba(100,55,121,.11);border-radius:24px;background:rgba(255,255,255,.88);box-shadow:0 14px 38px rgba(71,45,89,.07);transition:transform .25s,box-shadow .25s,border-color .25s}
.resource-name-grid>a:hover{transform:translateY(-4px);box-shadow:0 24px 55px rgba(71,45,89,.13);border-color:rgba(100,55,121,.24)}
.resource-name-grid strong{font-size:1.04rem;color:#493a50;line-height:1.25}
.resource-name-grid>a span{color:var(--dls-purple);font-size:1.1rem}
.resource-name-static{background:linear-gradient(145deg,rgba(246,239,249,.82),rgba(255,255,255,.82))}
.resource-benefit-editorials{display:grid;gap:22px}
.resource-benefit-editorials article{display:grid;grid-template-columns:180px minmax(0,1fr);gap:clamp(24px,4vw,54px);align-items:center;padding:clamp(24px,3vw,40px);border:1px solid rgba(100,55,121,.11);border-radius:32px;background:rgba(255,255,255,.88);box-shadow:0 20px 55px rgba(71,45,89,.08)}
.resource-benefit-visual{position:relative;aspect-ratio:1;border-radius:28px;background:linear-gradient(145deg,var(--dls-pale-blue),var(--dls-pale-mauve));overflow:hidden}
.resource-benefit-visual:before,.resource-benefit-visual:after{content:"";position:absolute}
.resource-benefit-visual-document:before{inset:30px 42px;border:3px solid var(--dls-purple);border-radius:9px;background:rgba(255,255,255,.73)}
.resource-benefit-visual-document:after{left:59px;right:59px;top:63px;height:3px;background:var(--dls-purple);box-shadow:0 15px 0 var(--dls-purple),0 30px 0 var(--dls-purple),0 45px 0 var(--dls-purple)}
.resource-benefit-visual-car:before{left:30px;right:30px;top:69px;height:44px;border:3px solid var(--dls-purple);border-radius:18px 18px 10px 10px;background:rgba(255,255,255,.75)}
.resource-benefit-visual-car:after{left:49px;bottom:49px;width:17px;height:17px;border-radius:50%;background:var(--dls-purple);box-shadow:62px 0 0 var(--dls-purple)}
.resource-benefit-editorials h3{margin-bottom:16px;color:var(--dls-purple-deep)}
.resource-benefit-editorials p{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:18px}

/* -------------------- Being Forgotten folder -------------------- */
.memoir-hero-pale{border-radius:0 0 58px 58px;overflow:hidden}
.memoir-hero-pale .memoir-hero-copy h1,.memoir-hero-pale .memoir-hero-copy p{color:var(--ink)}
.memoir-hero-pale .memoir-art-stack figure{background:#fff;border-color:rgba(100,55,121,.1);box-shadow:0 22px 60px rgba(69,43,87,.13)}
.chapter-folder-stage{background:linear-gradient(180deg,#fff 0%,#edf7fb 50%,#f4ebf8 100%)}
.chapter-folder{position:relative;overflow:hidden;padding:clamp(28px,4vw,58px);border:1px solid rgba(100,55,121,.13);border-radius:clamp(30px,4vw,58px);background:rgba(255,255,255,.86);box-shadow:0 38px 100px rgba(66,41,84,.13)}
.chapter-folder:before{content:"";position:absolute;left:clamp(36px,7vw,100px);top:-30px;width:260px;height:82px;border-radius:34px 34px 0 0;background:linear-gradient(135deg,#e6d7ef,#dceff7);border:1px solid rgba(100,55,121,.1)}
.chapter-folder-heading{position:relative;z-index:1;display:flex;align-items:center;gap:20px;padding-bottom:32px;border-bottom:1px solid var(--dls-hub-line)}
.chapter-folder-icon{display:grid;place-items:center;width:70px;height:70px;border-radius:24px;background:var(--dls-purple);box-shadow:0 20px 45px rgba(100,55,121,.2)}
.chapter-folder-icon svg{width:40px;height:40px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.chapter-folder-heading small{color:var(--mint-deep);font-weight:800;text-transform:uppercase;letter-spacing:.15em}
.chapter-folder-heading h2{margin:5px 0 0;color:var(--dls-purple-deep);font-size:clamp(2.6rem,5vw,5.4rem)}
.chapter-folder-grid{display:grid;gap:18px;padding-top:32px}
.chapter-folder-item{display:grid;grid-template-columns:190px minmax(0,1fr) auto;gap:clamp(22px,4vw,54px);align-items:center;padding:20px;border:1px solid rgba(100,55,121,.1);border-radius:28px;background:rgba(255,255,255,.88);transition:transform .3s,box-shadow .3s,border-color .3s}
.chapter-folder-item:hover{transform:translateX(6px);box-shadow:0 22px 54px rgba(70,44,87,.12);border-color:rgba(100,55,121,.22)}
.chapter-folder-art{height:145px;border-radius:20px;overflow:hidden;background:var(--dls-pale-blue)}
.chapter-folder-art img{width:100%;height:100%;object-fit:cover}
.chapter-folder-copy{min-width:0}
.chapter-folder-copy small{display:block;margin-bottom:7px;color:var(--mint-deep);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.68rem}
.chapter-folder-copy strong{display:block;margin-bottom:10px;color:var(--dls-purple-deep);font-size:clamp(1.35rem,2.5vw,2.25rem);line-height:1.05}
.chapter-folder-copy p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0;line-height:1.6}
.chapter-folder-item>i{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--dls-pale-mauve);color:var(--dls-purple);font-style:normal}

/* -------------------- Local events -------------------- */
.events-page{background:linear-gradient(180deg,#fff,#edf7fb 52%,#f4ebf8)}
.local-events-facebook{display:flex;align-items:center;justify-content:center;gap:24px;min-height:280px;padding:38px;border:1px solid rgba(100,55,121,.12);border-radius:38px;background:rgba(255,255,255,.86);box-shadow:var(--dls-hub-shadow)}
.local-events-facebook .content-hub-icon{width:82px;height:82px}

/* Internal page hero text on pale surfaces. */
.refined-light-hero .inner-hero-copy h1,
.refined-light-hero .inner-hero-copy p,
.refined-light-hero .inner-hero-copy .eyebrow{color:var(--ink)}
.refined-light-hero .inner-hero-copy .eyebrow:before{background:linear-gradient(90deg,var(--dls-purple),var(--dls-blue))}
.refined-light-hero .inner-hero-aside{background:rgba(255,255,255,.66);border-color:rgba(100,55,121,.1)}

@media(max-width:1100px){
  .content-hub-book,.content-hub-benefits{grid-column:span 7}
  .content-hub-events,.content-hub-support{grid-column:span 5}
  .content-hub-information,.content-hub-carers{grid-column:span 6}
  .content-hub-chapters{grid-template-columns:repeat(3,minmax(0,1fr))}
  .content-hub-chapter{grid-template-rows:140px auto}
  .benefit-hub-items{grid-template-columns:1fr}
  .resource-group-layout{grid-template-columns:minmax(220px,250px) minmax(0,1fr);gap:40px}
}

@media(max-width:900px){
  .content-hub-book,.content-hub-events,.content-hub-support,.content-hub-benefits,.content-hub-information,.content-hub-carers{grid-column:1/-1}
  .content-hub-book{order:1}.content-hub-events{order:2}.content-hub-support{order:3}.content-hub-benefits{order:4}.content-hub-information{order:5}.content-hub-carers{order:6}
  .resource-jump-nav{top:82px}
  .resource-group-layout{grid-template-columns:1fr;gap:30px}
  .resource-group-heading{position:relative;top:auto}
  .resource-name-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .resource-benefit-editorials article{grid-template-columns:150px minmax(0,1fr)}
  .chapter-folder-item{grid-template-columns:150px minmax(0,1fr) auto;gap:26px}
}

@media(max-width:700px){
  .content-hub-grid{gap:18px}
  .content-hub{border-radius:28px}
  .content-hub-book,.content-hub-events,.content-hub-support,.content-hub-benefits,.content-hub-information,.content-hub-carers{padding:24px 20px}
  .content-hub-heading{grid-template-columns:auto minmax(0,1fr) auto;gap:12px;margin-bottom:24px}
  .content-hub-icon{width:52px;height:52px;border-radius:17px}.content-hub-icon svg{width:29px;height:29px}
  .content-hub-heading strong{font-size:1.45rem}
  .content-hub-chapters{grid-template-columns:1fr}
  .content-hub-chapter{grid-template-columns:105px minmax(0,1fr);grid-template-rows:105px}
  .content-hub-chapter img{height:105px}
  .event-hub-list>a{grid-template-columns:1fr auto}.event-hub-list time{grid-column:1/-1;margin-bottom:-8px}
  .benefit-hub-items>a{grid-template-columns:68px minmax(0,1fr);padding:16px}.benefit-hub-art{width:68px}
  .content-hub-pills{gap:8px}.content-hub-pills a{min-height:41px;padding:7px 13px;font-size:.88rem}
  .resource-name-grid{grid-template-columns:1fr}
  .resource-benefit-editorials article{grid-template-columns:1fr;padding:22px}
  .resource-benefit-visual{max-width:190px;width:100%;justify-self:center}
  .chapter-folder{padding:24px 18px;border-radius:30px}
  .chapter-folder:before{left:44px;width:190px;height:65px}
  .chapter-folder-heading{gap:14px;padding-bottom:24px}.chapter-folder-icon{width:58px;height:58px;border-radius:19px}.chapter-folder-icon svg{width:32px;height:32px}
  .chapter-folder-item{grid-template-columns:94px minmax(0,1fr);gap:16px;padding:13px;border-radius:22px}
  .chapter-folder-art{height:100px;border-radius:16px}
  .chapter-folder-copy p{display:none}
  .chapter-folder-item>i{display:none}
  .local-events-facebook{flex-direction:column;text-align:center;min-height:240px}
}

@media(max-width:430px){
  .content-hub-heading>i{width:34px;height:34px}
  .content-hub-chapter{grid-template-columns:88px minmax(0,1fr);grid-template-rows:92px}.content-hub-chapter img{height:92px}.content-hub-chapter span{padding:13px}
  .benefit-hub-items>a{grid-template-columns:1fr}.benefit-hub-art{width:60px}.benefit-hub-items p{-webkit-line-clamp:3}
  .resource-jump-nav{top:76px}
  .resource-group-heading{grid-template-columns:56px minmax(0,1fr);gap:12px 14px}.resource-group-icon{width:56px;height:56px;border-radius:18px}.resource-group-icon svg{width:30px;height:30px}
  .resource-name-grid>a,.resource-name-static{min-height:72px;padding:17px 18px;border-radius:20px}
  .chapter-folder-item{grid-template-columns:82px minmax(0,1fr)}.chapter-folder-art{height:88px}.chapter-folder-copy strong{font-size:1.23rem}
}
.resource-name-copy{display:grid;gap:7px;min-width:0}
.resource-name-copy small{display:block;color:var(--muted);font-size:.82rem;line-height:1.45;font-weight:500}

/* ==========================================================
   Version 4.8.0 — exact Facebook migration and icon menus
   ========================================================== */
.content-hub-stage{
  background:
    radial-gradient(circle at 12% 14%,rgba(185,222,239,.42),transparent 25rem),
    radial-gradient(circle at 88% 30%,rgba(224,202,237,.48),transparent 27rem),
    linear-gradient(180deg,rgba(255,255,255,.86),rgba(246,250,253,.96) 48%,rgba(249,245,251,.96));
}
.content-hub-menu{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  align-items:start;
}
.content-hub-menu .content-hub{
  grid-column:auto!important;
  padding:0!important;
  border:1px solid rgba(100,55,121,.13);
  border-radius:32px;
  background:rgba(255,255,255,.86);
  box-shadow:0 26px 70px rgba(70,45,88,.1);
  overflow:hidden;
  min-width:0;
}
.content-hub-menu .content-hub[open]{
  background:rgba(255,255,255,.95);
  box-shadow:0 34px 86px rgba(70,45,88,.15);
}
.content-hub-menu summary{
  list-style:none;
  cursor:pointer;
  user-select:none;
  margin:0!important;
  padding:24px 26px;
  min-height:104px;
  border:0;
}
.content-hub-menu summary::-webkit-details-marker{display:none}
.content-hub-menu .content-hub-heading{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) 42px;
  align-items:center;
  gap:16px;
}
.content-hub-menu .content-hub-heading>span:nth-child(2){min-width:0}
.content-hub-menu .content-hub-heading strong{
  display:block;
  color:var(--dls-purple-deep);
  font-size:clamp(1.35rem,2vw,1.85rem);
  line-height:1.1;
  overflow-wrap:anywhere;
}
.content-hub-menu .content-hub-heading>i{
  position:relative;
  width:42px;
  height:42px;
  border-radius:50%;
  border:1px solid rgba(100,55,121,.15);
  background:rgba(241,232,246,.72);
  transition:transform .28s ease,background .28s ease;
}
.content-hub-menu .content-hub-heading>i:before,
.content-hub-menu .content-hub-heading>i:after{
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:15px;height:2px;
  background:var(--dls-purple);
  border-radius:999px;
  transform:translate(-50%,-50%);
}
.content-hub-menu .content-hub-heading>i:after{transform:translate(-50%,-50%) rotate(90deg)}
.content-hub-menu details[open] .content-hub-heading>i{transform:rotate(45deg);background:rgba(220,239,248,.9)}
.content-hub-panel{
  padding:0 26px 26px;
  border-top:1px solid rgba(100,55,121,.1);
  animation:dlsPanelIn .28s ease both;
  min-width:0;
}
@keyframes dlsPanelIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.content-hub-panel>.content-hub-chapters,
.content-hub-panel>.content-hub-list,
.content-hub-panel>.content-hub-posts,
.content-hub-panel>.content-hub-pills{margin-top:22px}
.content-hub-view{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:20px;
  padding:15px 2px 2px;
  border-top:1px solid rgba(100,55,121,.11);
  color:var(--dls-purple-deep);
  font-weight:760;
}
.content-hub-posts{display:grid;gap:14px}
.content-hub-posts>a{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:16px;
  align-items:center;
  padding:13px;
  border:1px solid rgba(100,55,121,.1);
  border-radius:22px;
  background:rgba(247,251,253,.9);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
  min-width:0;
}
.content-hub-posts>a:hover{transform:translateY(-3px);box-shadow:0 17px 38px rgba(70,45,88,.1);border-color:rgba(100,55,121,.22)}
.content-hub-posts>a>span{
  display:block;
  width:96px;
  aspect-ratio:1.15;
  border-radius:17px;
  overflow:hidden;
  background:linear-gradient(135deg,var(--dls-pale-blue),var(--dls-pale-mauve));
}
.content-hub-posts img{width:100%;height:100%;object-fit:cover}
.content-hub-posts div{min-width:0}
.content-hub-posts strong{display:block;color:var(--dls-purple-deep);line-height:1.25;overflow-wrap:anywhere}
.content-hub-posts p{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
  margin:7px 0 0;
  color:#5c5260;
  font-size:.9rem;
  line-height:1.5;
}
.event-hub-list>a{align-items:start}
.event-hub-list>a small{grid-column:1/-1;color:#645968;line-height:1.45}
.content-hub-menu .content-hub-chapters{grid-template-columns:repeat(3,minmax(0,1fr))}
.content-hub-menu .content-hub-chapters>a{min-width:0}
.content-hub-menu .content-hub-chapters strong{overflow-wrap:anywhere}

.resource-post-river{
  display:grid;
  gap:18px;
  margin-bottom:26px;
}
.resource-post-river article{
  display:grid;
  grid-template-columns:minmax(180px,260px) minmax(0,1fr);
  gap:28px;
  align-items:center;
  padding:20px;
  border:1px solid rgba(100,55,121,.12);
  border-radius:30px;
  background:rgba(255,255,255,.88);
  box-shadow:0 20px 54px rgba(70,45,88,.08);
}
.resource-post-river article:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(180px,260px)}
.resource-post-river article:nth-child(even) .resource-post-media{order:2}
.resource-post-media{
  display:block;
  min-height:180px;
  border-radius:22px;
  overflow:hidden;
  background:linear-gradient(135deg,var(--dls-pale-blue),var(--dls-pale-mauve));
}
.resource-post-media img{width:100%;height:100%;min-height:180px;object-fit:cover}
.resource-post-river h3{margin:0 0 12px;font-size:clamp(1.35rem,2.3vw,2rem);line-height:1.12}
.resource-post-river p{margin:0 0 16px;line-height:1.65}
.resource-benefit-image{
  display:block;
  width:150px;
  aspect-ratio:1.2;
  border-radius:24px;
  overflow:hidden;
  background:linear-gradient(135deg,var(--dls-pale-blue),var(--dls-pale-mauve));
}
.resource-benefit-image img{width:100%;height:100%;object-fit:cover}

.facebook-follow-up,
.chapter-facebook-intro,
.chapter-facebook-outro,
.chapter-facebook-comments{
  margin:clamp(32px,5vw,64px) 0 0;
  padding:clamp(24px,4vw,40px);
  border:1px solid rgba(100,55,121,.13);
  border-radius:28px;
  background:linear-gradient(145deg,rgba(234,246,251,.78),rgba(241,232,246,.82));
  box-shadow:0 22px 54px rgba(70,45,88,.09);
}
.chapter-facebook-intro{margin-top:0;margin-bottom:40px}
.chapter-facebook-outro{margin-top:44px}
.facebook-follow-up h2,
.chapter-facebook-comments h2{margin-top:0;color:var(--dls-purple-deep)}
.chapter-facebook-comments blockquote{
  margin:18px 0 0;
  padding:22px 24px;
  border-left:4px solid var(--dls-purple);
  border-radius:0 18px 18px 0;
  background:rgba(255,255,255,.8);
}
.chapter-facebook-comments blockquote p:last-child{margin-bottom:0}

@media(max-width:1024px){
  .content-hub-menu{grid-template-columns:1fr}
  .content-hub-menu .content-hub-chapters{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .content-hub-menu{gap:15px}
  .content-hub-menu summary{padding:19px 18px;min-height:88px}
  .content-hub-menu .content-hub-heading{grid-template-columns:auto minmax(0,1fr) 36px;gap:12px}
  .content-hub-menu .content-hub-heading>i{width:36px;height:36px}
  .content-hub-panel{padding:0 18px 20px}
  .content-hub-menu .content-hub-chapters{grid-template-columns:1fr}
  .content-hub-posts>a{grid-template-columns:78px minmax(0,1fr)}
  .content-hub-posts>a>span{width:78px}
  .resource-post-river article,
  .resource-post-river article:nth-child(even){grid-template-columns:1fr;gap:18px}
  .resource-post-river article:nth-child(even) .resource-post-media{order:0}
  .resource-post-media,.resource-post-media img{min-height:160px}
  .resource-benefit-image{width:100%;max-width:240px}
}
@media(max-width:420px){
  .content-hub-menu .content-hub{border-radius:24px}
  .content-hub-menu summary{padding:16px 14px}
  .content-hub-menu .content-hub-heading{grid-template-columns:46px minmax(0,1fr) 32px;gap:10px}
  .content-hub-menu .content-hub-icon{width:46px;height:46px;border-radius:15px}
  .content-hub-menu .content-hub-icon svg{width:26px;height:26px}
  .content-hub-menu .content-hub-heading strong{font-size:1.18rem}
  .content-hub-menu .content-hub-heading>i{width:32px;height:32px}
  .content-hub-panel{padding:0 14px 17px}
  .content-hub-posts>a{grid-template-columns:1fr;padding:12px}
  .content-hub-posts>a>span{width:100%;aspect-ratio:1.85}
  .content-hub-pills a{max-width:100%;overflow-wrap:anywhere}
  .resource-post-river article{padding:14px;border-radius:23px}
}
.event-ledger-art{width:150px;aspect-ratio:1.25;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,var(--dls-pale-blue),var(--dls-pale-mauve));margin:0}
.event-ledger-art img{width:100%;height:100%;object-fit:cover}
@media(max-width:760px){.event-ledger-art{width:100%;max-width:280px}}
.event-ledger article{grid-template-columns:58px 150px 120px minmax(0,1fr) 78px}
@media(max-width:900px){
  .event-ledger article{grid-template-columns:40px minmax(0,1fr);gap:14px 18px}
  .event-ledger article>.event-index{grid-column:1;grid-row:1/5;align-self:start}
  .event-ledger-art{grid-column:2;grid-row:1;width:min(100%,300px)}
  .event-ledger time{grid-column:2;grid-row:2}
  .event-ledger article>div{grid-column:2;grid-row:3}
  .event-ledger article>a{grid-column:2;grid-row:4;justify-self:start}
}
@media(max-width:1020px){
  .main-nav{
    left:calc((100vw - 100%) / -2)!important;
    right:auto!important;
    width:100vw!important;
  }
}


/* ==========================================================
   Version 5.0.0 — Facebook source reconciliation and layout-safe content update
   Visual-only refinements. Client-authored wording is unchanged.
   ========================================================== */

html,body{max-width:100%;overflow-x:clip}
img,svg,video,iframe{max-width:100%}
main{min-width:0}
.container{min-width:0}

/* Keep the opening hierarchy clean: logo, stand-alone introduction, Welcome. */
.client-hero-stage,.client-hero-emblem,.client-hero-statement,
.client-welcome-shell,.client-welcome-grid,.client-welcome-copy,.client-welcome-art{min-width:0}
.client-welcome-heading{
  display:block;
  padding-bottom:clamp(26px,3.5vw,44px);
}
.client-welcome-heading h2{
  max-width:100%;
  text-wrap:balance;
}
.client-welcome-grid.client-welcome-grid-copy-first{
  align-items:center;
}
.client-welcome-copy .welcome-prose p,
.editorial-prose p{overflow-wrap:anywhere}

/* Icon menu: compact while closed, full-width and editorial while open. */
.content-hub-menu{
  grid-auto-flow:row dense;
  gap:clamp(18px,2.1vw,28px);
}
.content-hub-menu .content-hub{
  align-self:start;
  border-radius:30px;
  transform:none;
}
.content-hub-menu .content-hub:hover{
  transform:none;
  box-shadow:0 30px 76px rgba(70,45,88,.13);
}
.content-hub-menu .content-hub[open]{
  grid-column:1/-1!important;
}
.content-hub-menu summary{
  min-height:100px;
  padding:22px 24px;
}
.content-hub-menu .content-hub-heading{
  grid-template-columns:58px minmax(0,1fr) 40px;
  gap:16px;
}
.content-hub-menu .content-hub-icon{
  width:58px;
  height:58px;
  border-radius:19px;
}
.content-hub-menu .content-hub-icon svg{width:31px;height:31px}
.content-hub-menu .content-hub-heading strong{
  font-size:clamp(1.32rem,1.8vw,1.72rem);
  line-height:1.15;
  letter-spacing:-.025em;
  text-wrap:balance;
}
.content-hub-menu .content-hub-heading>i{
  width:40px;
  height:40px;
}
.content-hub-panel{
  padding:0 clamp(20px,3vw,34px) clamp(24px,3vw,36px);
}
.content-hub-panel>.content-hub-chapters,
.content-hub-panel>.content-hub-list,
.content-hub-panel>.content-hub-posts,
.content-hub-panel>.content-hub-pills{margin-top:clamp(20px,2.4vw,30px)}

/* The previous chapter markup did not receive its intended card styling. */
.content-hub-menu .content-hub-chapters{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(14px,2vw,22px);
}
.content-hub-menu .content-hub-chapters>a{
  display:grid;
  grid-template-rows:auto auto 1fr;
  align-content:start;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(100,55,121,.12);
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 34px rgba(70,45,88,.07);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.content-hub-menu .content-hub-chapters>a:hover{
  transform:translateY(-4px);
  border-color:rgba(100,55,121,.24);
  box-shadow:0 24px 50px rgba(70,45,88,.13);
}
.content-hub-menu .content-hub-chapters>a>span{
  display:block;
  width:100%;
  aspect-ratio:1.32;
  overflow:hidden;
  background:linear-gradient(135deg,var(--dls-pale-blue),var(--dls-pale-mauve));
}
.content-hub-menu .content-hub-chapters img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.content-hub-menu .content-hub-chapters>a:hover img{transform:scale(1.035)}
.content-hub-menu .content-hub-chapters b{
  display:block;
  padding:16px 18px 5px;
  color:var(--mint-deep);
  font-size:.7rem;
  font-weight:800;
  line-height:1;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.content-hub-menu .content-hub-chapters strong{
  display:block;
  padding:0 18px 18px;
  color:var(--dls-purple-deep);
  font-size:clamp(1.05rem,1.5vw,1.3rem);
  line-height:1.22;
  letter-spacing:-.02em;
}

/* Expanded post lists use the same rhythm, regardless of category. */
.content-hub-menu .content-hub[open] .content-hub-posts{
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:16px;
}
.content-hub-posts>a{
  min-height:126px;
  border-radius:21px;
}
.content-hub-posts strong{font-size:1rem}
.content-hub-posts p{font-size:.91rem;line-height:1.52}

/* Event preview was using a different DOM structure than its old CSS expected. */
.event-hub-list>a{
  position:relative;
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:6px 18px;
  align-items:start;
  padding:20px 42px 20px 0;
}
.event-hub-list>a>span{
  grid-row:1/3;
  display:grid;
  place-items:center;
  min-height:54px;
  padding:9px 10px;
  border-radius:16px;
  background:linear-gradient(145deg,var(--dls-pale-blue),var(--dls-pale-mauve));
  color:var(--dls-purple-deep);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.event-hub-list>a>strong{color:var(--dls-purple-deep);font-size:1.05rem;line-height:1.3}
.event-hub-list>a>small{grid-column:2;color:#625768;font-size:.9rem;line-height:1.55}
.event-hub-list>a:after{position:absolute;right:4px;top:22px}

.content-hub-pills{align-items:stretch}
.content-hub-pills a{
  min-height:42px;
  padding:9px 15px;
  font-size:.86rem;
  line-height:1.25;
  text-align:center;
}
.content-hub-view{
  min-height:48px;
  margin-top:22px;
  padding-top:16px;
}

/* Shared internal-page rhythm. */
.inner-hero-grid,.memoir-hero-grid,.article-hero-grid,.chapter-hero-grid,
.resource-group-layout,.footer-shell,.footer-nav-grid{min-width:0}
.inner-hero-copy h1,.memoir-hero-copy h1,.article-hero-copy h1,.chapter-hero-copy h1{
  max-width:100%;
  overflow-wrap:anywhere;
  text-wrap:balance;
}
.inner-hero-copy p,.memoir-hero-copy p,.information-notice,
.resource-name-copy small,.archive-feature-copy p,.archive-item-copy p{
  overflow-wrap:anywhere;
}
.resource-name-grid>a,.resource-name-static,
.resource-post-river article,.resource-benefit-editorials article,
.archive-item,.archive-feature{min-width:0}
.resource-name-grid>a,.resource-name-static{height:100%}

/* Footer columns line up from the same baseline and wrap safely. */
.footer-nav-grid{align-items:start}
.footer-column h3{min-height:2.2em}
.footer-column>a,.footer-contact-copy strong{max-width:100%;overflow-wrap:anywhere}

@media(min-width:1025px){
  .content-hub-menu .content-hub[open] summary{padding-inline:30px}
  .content-hub-menu .content-hub[open] .content-hub-panel{padding-inline:30px}
}

@media(max-width:1024px){
  .content-hub-menu{grid-template-columns:1fr}
  .content-hub-menu .content-hub[open]{grid-column:auto!important}
  .footer-column h3{min-height:0}
}

@media(max-width:760px){
  .client-welcome-heading{padding-bottom:22px}
  .client-welcome-grid.client-welcome-grid-copy-first{padding-top:30px}
  .client-welcome-copy .welcome-prose p:first-child:first-letter{
    font-size:3.65em;
    line-height:.78;
    margin-right:.1em;
  }
  .content-hub-menu{gap:14px}
  .content-hub-menu summary{min-height:84px;padding:16px 16px}
  .content-hub-menu .content-hub-heading{grid-template-columns:48px minmax(0,1fr) 34px;gap:11px}
  .content-hub-menu .content-hub-icon{width:48px;height:48px;border-radius:16px}
  .content-hub-menu .content-hub-icon svg{width:27px;height:27px}
  .content-hub-menu .content-hub-heading strong{font-size:1.2rem}
  .content-hub-menu .content-hub-heading>i{width:34px;height:34px}
  .content-hub-panel{padding:0 16px 20px}
  .content-hub-menu .content-hub-chapters{grid-template-columns:1fr;gap:12px}
  .content-hub-menu .content-hub-chapters>a{
    grid-template-columns:104px minmax(0,1fr);
    grid-template-rows:auto auto;
    border-radius:19px;
  }
  .content-hub-menu .content-hub-chapters>a>span{
    grid-row:1/3;
    aspect-ratio:auto;
    height:100%;
    min-height:104px;
  }
  .content-hub-menu .content-hub-chapters b{padding:18px 15px 4px}
  .content-hub-menu .content-hub-chapters strong{padding:0 15px 17px;font-size:1.05rem}
  .content-hub-menu .content-hub[open] .content-hub-posts{grid-template-columns:1fr}
  .content-hub-posts>a{min-height:0}
  .event-hub-list>a{grid-template-columns:74px minmax(0,1fr);gap:5px 13px;padding-right:34px}
  .event-hub-list>a>small{font-size:.86rem}
  .footer-brand{align-items:center}
}

@media(max-width:430px){
  .site-header .container{width:calc(100% - 20px)}
  .nav-shell{min-height:58px;padding:0 7px 0 9px}
  .brand-mark{width:38px;height:38px}
  .brand-copy b{font-size:.88rem}
  .menu-toggle{width:42px;height:42px}
  .client-hero-statement{border-radius:24px}
  .client-welcome-copy{border-radius:28px 16px 28px 16px}
  .content-hub-menu .content-hub{border-radius:23px}
  .content-hub-menu summary{padding:14px 13px}
  .content-hub-panel{padding-inline:13px}
  .content-hub-menu .content-hub-chapters>a{grid-template-columns:88px minmax(0,1fr)}
  .content-hub-menu .content-hub-chapters>a>span{min-height:92px}
  .content-hub-menu .content-hub-chapters b{padding:15px 13px 3px;font-size:.65rem}
  .content-hub-menu .content-hub-chapters strong{padding:0 13px 14px;font-size:1rem}
  .content-hub-posts>a{grid-template-columns:76px minmax(0,1fr)}
  .content-hub-posts>a>span{width:76px;aspect-ratio:1}
  .content-hub-posts p{-webkit-line-clamp:2}
  .content-hub-pills a{flex:1 1 calc(50% - 8px);max-width:100%}
  .event-hub-list>a{grid-template-columns:1fr;padding-right:30px}
  .event-hub-list>a>span{grid-row:auto;justify-self:start;min-height:0}
  .event-hub-list>a>small{grid-column:1}
}

/* Balanced desktop menu rows and narrow-phone hero safeguards. */
@media(min-width:1025px){
  .content-hub-menu{grid-template-columns:repeat(6,minmax(0,1fr))}
  .content-hub-menu .content-hub:not([open]){grid-column:span 2!important}
  .content-hub-menu .content-hub-information:not([open]),
  .content-hub-menu .content-hub-carers:not([open]){grid-column:span 3!important}
  .content-hub-menu .content-hub[open]{grid-column:1/-1!important}
}
@media(max-width:600px){
  .client-hero-feature{width:100%;max-width:none;min-width:0}
  .client-hero-feature strong{min-width:0;overflow-wrap:anywhere}
}

/* v5.1: named support resources use one consistent component and can show
   Julie's own embedded comments when those are entered in WordPress. */
.content-hub-panel>.content-hub-resource-grid{margin-top:clamp(20px,2.4vw,30px)}
.content-hub-resource-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:12px;
}
.content-hub-resource-grid>a{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  min-width:0;
  min-height:74px;
  padding:16px 17px;
  border:1px solid rgba(100,55,121,.12);
  border-radius:19px;
  background:rgba(255,255,255,.86);
  color:#4d4252;
  box-shadow:0 10px 24px rgba(70,45,88,.05);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease;
}
.content-hub-resource-grid>a:hover{
  transform:translateY(-3px);
  border-color:rgba(100,55,121,.24);
  background:#fff;
  box-shadow:0 17px 34px rgba(70,45,88,.1);
}
.content-hub-resource-grid a>span{display:block;min-width:0}
.content-hub-resource-grid strong{
  display:block;
  color:var(--dls-purple-deep);
  font-size:.94rem;
  line-height:1.3;
  overflow-wrap:anywhere;
}
.content-hub-resource-grid small{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
  margin-top:7px;
  color:#665b6a;
  font-size:.8rem;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.content-hub-resource-grid i{
  flex:0 0 auto;
  color:var(--dls-purple);
  font-style:normal;
  font-weight:800;
}
@media (max-width:640px){
  .content-hub-resource-grid{grid-template-columns:1fr}
  .content-hub-resource-grid>a{min-height:64px;padding:14px 15px}
}

/* ==========================================================
   Version 5.2.0 — comprehensive responsive and layout QA
   Fixes support-page grid placement, contrast, title wrapping,
   intermediate-width navigation, image frames and shared page rhythm.
   Client-authored wording remains unchanged.
   ========================================================== */

/* Headings should wrap at word boundaries, never split into visual fragments. */
h1,h2,h3,h4{
  overflow-wrap:break-word;
  word-break:normal;
  hyphens:none;
}

/* Keep every anchored section visible below the sticky header and jump navigation. */
section[id],details[id]{scroll-margin-top:170px}

/* More resilient desktop navigation, including browser zoom and narrow laptops. */
.nav-shell,.main-nav,.main-nav-links{min-width:0}
.main-nav{flex:1;justify-content:flex-end}
.main-nav-links{justify-content:flex-end}
.nav-link{padding-inline:clamp(5px,.62vw,9px)}

/* Support hero: retain the pale palette while restoring clear text contrast. */
.resources-hero.refined-light-hero{
  min-height:clamp(520px,66vh,700px);
  padding-block:clamp(112px,9vw,156px);
  background:
    radial-gradient(circle at 12% 24%,rgba(191,225,240,.62),transparent 31%),
    radial-gradient(circle at 88% 30%,rgba(226,207,238,.7),transparent 34%),
    linear-gradient(135deg,#f9fdff 0%,#fff 49%,#f4ecf8 100%)!important;
  color:var(--ink);
}
.resources-hero.refined-light-hero .inner-hero-grid{
  align-items:center;
  grid-template-columns:minmax(0,1fr) minmax(320px,420px);
  gap:clamp(48px,7vw,96px);
}
.resources-hero.refined-light-hero .inner-hero-copy h1{
  font-size:clamp(3.6rem,6.2vw,6.2rem);
  line-height:.92;
  letter-spacing:-.05em;
}
.resources-hero.refined-light-hero .inner-hero-copy p{
  max-width:40rem;
  font-size:clamp(1.08rem,1.45vw,1.34rem);
}
.resources-hero.refined-light-hero .inner-hero-orbit{
  border-color:rgba(100,55,121,.13);
  box-shadow:0 0 0 55px rgba(100,55,121,.026),0 0 0 110px rgba(90,159,194,.026);
}
.resource-hero-aside{
  width:min(100%,420px);
  justify-self:end;
  justify-items:center;
  align-self:center;
  gap:0;
  overflow:hidden;
  border:1px solid rgba(100,55,121,.14);
  border-radius:34px;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 28px 74px rgba(64,39,81,.12);
  backdrop-filter:blur(18px);
}
.resource-hero-emblem{
  width:min(290px,74%);
  margin:32px auto 22px;
  background:linear-gradient(145deg,#fff,rgba(234,246,251,.92));
  border-color:rgba(100,55,121,.12);
  box-shadow:0 22px 56px rgba(64,39,81,.1);
}
.resource-hero-emblem:before,.resource-hero-emblem:after{border-color:rgba(100,55,121,.13)}
.resource-hero-emblem img{box-shadow:0 12px 34px rgba(66,42,82,.12)}
.resource-hero-aside .information-notice{
  width:100%;
  max-width:none;
  margin:0;
  padding:20px 24px 24px;
  border:0;
  border-top:1px solid rgba(100,55,121,.08);
  border-left:4px solid var(--amber);
  background:linear-gradient(135deg,#3b1f52,#29485a);
  color:#fff;
  font-size:1rem;
  line-height:1.72;
  text-shadow:none;
}

/* Support page: every section now has a fixed heading column and one content column. */
.resource-group-stage{
  overflow:clip;
  isolation:isolate;
}
.resource-group-stage:before{
  content:"";
  position:absolute;
  right:-9rem;
  top:3rem;
  width:25rem;
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(226,207,238,.28),transparent 68%);
  pointer-events:none;
  z-index:-1;
}
.resource-group-layout{
  grid-template-columns:minmax(240px,290px) minmax(0,1fr);
  gap:clamp(38px,5vw,72px);
  align-items:start;
}
.resource-group-heading{
  position:relative;
  top:auto;
  z-index:1;
  align-self:start;
  grid-template-columns:64px minmax(0,1fr);
  gap:14px 16px;
  min-width:0;
  max-width:290px;
  padding:4px 0 0;
}
.resource-group-number{font-size:.75rem}
.resource-group-heading h2{
  max-width:100%;
  margin:0;
  color:var(--dls-purple-deep);
  font-size:clamp(2rem,2.6vw,3rem);
  line-height:1;
  letter-spacing:-.045em;
  text-wrap:balance;
  overflow-wrap:break-word;
}
.resource-group-content{
  grid-column:2;
  display:grid;
  gap:clamp(22px,3vw,34px);
  min-width:0;
}
.resource-group-content>.resource-post-river,
.resource-group-content>.resource-name-grid,
.resource-group-content>.resource-benefit-editorials{margin:0}
.resource-name-grid{
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:16px;
}
.resource-name-grid>a,.resource-name-static{
  min-width:0;
  min-height:94px;
  padding:20px 21px;
  border-radius:22px;
}
.resource-name-copy strong{overflow-wrap:break-word;word-break:normal}
.resource-post-river article{
  grid-template-columns:minmax(190px,250px) minmax(0,1fr);
  gap:clamp(22px,3vw,38px);
  padding:clamp(18px,2.2vw,28px);
}
.resource-post-media{
  min-height:170px;
  aspect-ratio:4/3;
}
.resource-post-media img{min-height:0;width:100%;height:100%;object-fit:cover;object-position:center}
.resource-benefit-editorials article{
  grid-template-columns:minmax(170px,205px) minmax(0,1fr);
  gap:clamp(24px,3.5vw,48px);
}
.resource-benefit-image{
  width:100%;
  max-width:205px;
  aspect-ratio:4/3;
}
.resource-benefit-image img{object-fit:cover;object-position:center}

/* Shared inner pages: align hero content consistently and avoid oversized title collisions. */
.inner-hero-grid,.about-hero-grid,.memoir-hero-grid,.article-hero-grid,.chapter-hero-grid{
  align-items:center;
}
.inner-hero-copy h1,
.about-hero .inner-hero-copy h1,
.memoir-hero-copy h1,
.article-hero-copy h1,
.chapter-hero-copy h1,
.newsletter-page-copy h1{
  max-width:100%;
  line-height:.92;
  overflow-wrap:break-word;
  word-break:normal;
}
.inner-hero-copy h1{font-size:clamp(3.9rem,7vw,7.4rem)}
.inner-hero-copy p{max-width:760px}
.inner-hero-aside{align-self:center}

/* Image containers use predictable crops and never escape their layout. */
.news-hero-art,.about-hero-emblem,.contact-hero-aside,
.memoir-art-stack,.article-cover,.chapter-hero-art,
.archive-feature-media,.archive-item-media,.event-ledger-art,
.client-welcome-art,.client-welcome-art figure,.chapter-folder-art{
  min-width:0;
  max-width:100%;
}
.news-hero-art img,.memoir-art-stack img,.article-cover img,.chapter-hero-art img,
.archive-feature-media img,.archive-item-media img,.event-ledger-art img,
.client-welcome-art-main img,.client-welcome-art-side img,.chapter-folder-art img{
  object-position:center;
}
.article-cover,.chapter-hero-art,.news-hero-art,.event-hero-calendar{transform-origin:center}

/* About and editorial rows remain readable at intermediate widths. */
.purpose-river>a{min-width:0}
.purpose-river strong,.purpose-copy{min-width:0;overflow-wrap:break-word}
.archive-feature,.archive-item,.event-ledger article,.chapter-folder-item{min-width:0}
.archive-feature-copy h2,.archive-item-copy h2,.event-ledger h2,.chapter-folder-copy strong{
  overflow-wrap:break-word;
  word-break:normal;
}

/* Forms and reading columns cannot exceed their parent at any viewport. */
.contact-form-panel,.newsletter-page-form,.newsletter-form-wrap,
.article-body,.chapter-body,.editorial-prose{min-width:0;max-width:100%}
.contact-form-panel input,.contact-form-panel textarea,
.newsletter-page-form input,.newsletter-form-wrap input{width:100%;max-width:100%}
.editorial-prose img,.article-body img,.chapter-body img{
  max-width:100%;height:auto;border-radius:clamp(14px,2vw,28px)
}
.editorial-prose iframe,.article-body iframe,.chapter-body iframe{width:100%;max-width:100%}

/* Footer and long labels share a stable wrapping rhythm. */
.footer-shell,.footer-brand,.footer-nav-grid,.footer-column{min-width:0}
.footer-column a,.footer-brand p,.footer-note,.footer-bottom{overflow-wrap:break-word}

/* Switch to the reliable overlay navigation before desktop links can collide. */
@media(max-width:1240px){
  .site-header,.site-header.is-scrolled,.home .site-header,.home .site-header:not(.is-scrolled){
    padding:9px 0;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }
  .nav-shell,.home .site-header:not(.is-scrolled) .nav-shell{
    min-height:62px;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }
  .menu-toggle{display:flex;position:relative;z-index:1004}
  .brand,.menu-toggle{position:relative;z-index:1004}
  .main-nav{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    max-width:none!important;
    height:100dvh!important;
    min-height:100svh!important;
    margin:0!important;
    padding:calc(env(safe-area-inset-top,0px) + 104px) clamp(20px,6vw,48px) calc(env(safe-area-inset-bottom,0px) + 32px)!important;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    gap:22px;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    background:radial-gradient(circle at 82% 10%,rgba(100,200,170,.22),transparent 28%),radial-gradient(circle at 10% 90%,rgba(138,99,210,.25),transparent 34%),linear-gradient(145deg,#100719 0%,#211033 55%,#102f37 100%);
    opacity:0;
    visibility:hidden;
    transform:translate3d(0,-14px,0);
    transition:opacity .28s var(--ease),visibility .28s,transform .28s var(--ease);
    isolation:isolate;
  }
  .main-nav:before{
    content:"";position:fixed;inset:0;z-index:-1;opacity:.12;pointer-events:none;
    background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);
    background-size:56px 56px;
  }
  .main-nav.open{opacity:1;visibility:visible;transform:none}
  .main-nav-links{display:grid;width:min(100%,650px);margin:0 auto;border-top:1px solid rgba(255,255,255,.16)}
  .nav-link{
    display:flex;align-items:center;min-height:62px;width:100%;padding:13px 2px;
    border-bottom:1px solid rgba(255,255,255,.16);color:#fff!important;
    font-size:clamp(1.25rem,3vw,1.8rem);font-weight:700;line-height:1.12;white-space:normal;
  }
  .nav-link:after{left:2px;right:auto;bottom:10px;width:72px}
  .subscribe-pill{width:min(100%,650px);min-height:58px;margin:0 auto;background:var(--amber)!important;color:var(--night)!important}
  body.menu-open{position:fixed;left:0;right:0;width:100%;overflow:hidden;overscroll-behavior:none}
  body.menu-open .site-header,body.menu-open .site-header.is-scrolled,body.menu-open.home .site-header:not(.is-scrolled),
  body.menu-open .nav-shell,body.menu-open.home .site-header:not(.is-scrolled) .nav-shell{
    background:transparent;border-color:transparent;box-shadow:none
  }
  body.menu-open .brand-copy b,body.menu-open .brand-copy small{color:#fff!important}
  body.menu-open .menu-toggle{background:#fff}
  body.menu-open .menu-toggle i{background:var(--night)}
}

@media(max-width:1100px){
  .resources-hero.refined-light-hero .inner-hero-grid{grid-template-columns:1fr;gap:52px}
  .resource-hero-aside{justify-self:start;width:min(100%,520px)}
  .resource-hero-emblem{width:min(300px,68%)}
  .resource-group-layout{grid-template-columns:1fr;gap:30px}
  .resource-group-heading{
    position:relative;top:auto;max-width:none;
    grid-template-columns:64px minmax(0,1fr);
    padding:0 0 8px;
  }
  .resource-group-heading h2{font-size:clamp(2.45rem,5.6vw,4.1rem)}
  .resource-group-content{grid-column:1}
  .event-ledger article{
    grid-template-columns:46px minmax(150px,230px) minmax(0,1fr);
    gap:18px 24px;
  }
  .event-ledger article>.event-index{grid-column:1;grid-row:1/4;align-self:start}
  .event-ledger-art{grid-column:2;grid-row:1/4;width:100%}
  .event-ledger time{grid-column:3;grid-row:1}
  .event-ledger article>div{grid-column:3;grid-row:2}
  .event-ledger article>a{grid-column:3;grid-row:3;justify-self:start}
  .purpose-river>a{grid-template-columns:56px minmax(180px,.72fr) minmax(220px,1fr) 48px;gap:24px}
}

@media(max-width:860px){
  .purpose-river>a{grid-template-columns:46px minmax(0,1fr) 44px;gap:14px 18px}
  .purpose-river .purpose-copy{grid-column:2}
  .purpose-river i{grid-column:3;grid-row:1/3}
  .archive-feature{grid-template-columns:1fr;min-height:0}
  .archive-feature-media{aspect-ratio:1.35}
  .archive-grid{grid-template-columns:1fr;gap:58px}
  .archive-item,.archive-item:nth-child(3n+1),.archive-item:nth-child(3n+2){grid-column:1;padding-top:0}
  .archive-item-media,.archive-item:nth-child(3n+2) .archive-item-media{aspect-ratio:1.35}
}

@media(max-width:760px){
  section[id],details[id]{scroll-margin-top:132px}
  .resources-hero.refined-light-hero{padding-block:112px 82px}
  .resources-hero.refined-light-hero .inner-hero-copy h1{font-size:clamp(3.5rem,17vw,5.4rem)}
  .resource-hero-aside{border-radius:30px}
  .resource-hero-emblem{margin-top:28px}
  .resource-hero-aside .information-notice{padding:21px 22px 23px}
  .resource-group-heading{grid-template-columns:56px minmax(0,1fr);gap:12px}
  .resource-group-heading h2{font-size:clamp(2.25rem,10vw,3.7rem)}
  .resource-group-content{gap:20px}
  .resource-name-grid{grid-template-columns:1fr}
  .resource-post-river article,.resource-post-river article:nth-child(even){grid-template-columns:1fr;gap:18px}
  .resource-post-river article:nth-child(even) .resource-post-media{order:0}
  .resource-post-media{aspect-ratio:16/9;min-height:0}
  .resource-benefit-editorials article{grid-template-columns:1fr}
  .resource-benefit-image{max-width:100%;aspect-ratio:16/9}
  .event-ledger article{grid-template-columns:38px minmax(0,1fr);gap:12px 16px}
  .event-ledger article>.event-index{grid-column:1;grid-row:1/5}
  .event-ledger-art{grid-column:2;grid-row:1;width:min(100%,320px)}
  .event-ledger time{grid-column:2;grid-row:2}
  .event-ledger article>div{grid-column:2;grid-row:3}
  .event-ledger article>a{grid-column:2;grid-row:4}
  .memoir-art-stack{overflow:visible}
  .article-cover,.chapter-hero-art,.news-hero-art,.event-hero-calendar{transform:none}
}

@media(max-width:430px){
  .resource-group-heading{grid-template-columns:50px minmax(0,1fr)}
  .resource-group-icon{width:50px;height:50px;border-radius:16px}
  .resource-group-icon svg{width:28px;height:28px}
  .resource-group-heading h2{font-size:clamp(2rem,10.5vw,3rem)}
  .resource-name-grid>a,.resource-name-static{min-height:76px;padding:16px 17px;border-radius:18px}
  .resource-post-river article{padding:14px;border-radius:22px}
  .resource-hero-aside .information-notice{font-size:.9rem}
  .footer-nav-grid{grid-template-columns:1fr}
  .footer-connect{grid-column:auto}
}


/* Version 5.2.0 QA pass: prevent overlaps, contrast failures and alignment drift. */
.resource-jump-nav{box-shadow:0 10px 24px rgba(69,44,87,.06)}
.resource-jump-nav .container{align-items:center}
.resource-name-grid,.resource-post-river,.resource-benefit-editorials,.resource-group-content,.resource-group-layout,.chapter-folder-grid,.archive-river,.event-ledger,.purpose-river{min-width:0}
.resource-post-river article,.resource-benefit-editorials article,.archive-feature,.archive-item,.event-ledger article,.purpose-river>a,.content-hub,.chapter-folder-item{overflow:hidden}
.resource-post-river h3,.resource-benefit-editorials h3,.resource-name-copy strong,.archive-feature-copy h2,.archive-item-copy h2,.event-ledger h2,.chapter-folder-copy strong,.article-hero-copy h1,.chapter-hero-copy h1,.newsletter-page-copy h1,.contact-hero-copy h1{overflow-wrap:anywhere}
.resource-group-stage .container,.inner-hero-grid,.about-hero-grid,.article-hero-grid,.chapter-hero-grid,.memoir-hero-grid,.contact-grid,.newsletter-page-grid{min-width:0}
img,svg,iframe{max-width:100%}
@media(max-width:1100px){
  .resources-hero.refined-light-hero .inner-hero-grid{grid-template-columns:1fr;gap:28px}
  .resource-hero-aside{justify-self:start;width:min(100%,440px)}
}
@media(max-width:900px){
  .resource-group-content{grid-column:auto}
}
@media(max-width:640px){
  .resource-jump-nav .container{gap:8px}
  .resource-jump-nav a{padding:8px 12px;font-size:.76rem}
  .resources-hero.refined-light-hero .inner-hero-copy h1{font-size:clamp(3rem,14vw,4.4rem)}
  .resources-hero.refined-light-hero .inner-hero-copy p{font-size:1rem}
  .resource-hero-aside .information-notice{padding:18px 20px 22px;font-size:.94rem}
  .resource-group-heading h2{font-size:clamp(1.8rem,10vw,2.6rem)}
}

/* ==========================================================
   Version 5.3.0 — July 24 client visual revision
   - Stronger blue / mauve / white palette
   - Connected Through Dementia directly beneath the logo
   - Creative layered menu previews inspired by Julie's example
   - Visual website-preview cards for support resources
   ========================================================== */

body{
  background:
    radial-gradient(circle at 9% 8%,rgba(110,199,231,.22),transparent 28rem),
    radial-gradient(circle at 91% 16%,rgba(185,139,215,.22),transparent 30rem),
    linear-gradient(180deg,#f4fbff 0%,#fff 28%,#f0e8f7 62%,#eff9fd 100%);
}

.client-logo-hero{
  background:
    radial-gradient(circle at 14% 18%,rgba(89,181,219,.58),transparent 26rem),
    radial-gradient(circle at 86% 20%,rgba(169,111,205,.52),transparent 28rem),
    radial-gradient(circle at 50% 58%,rgba(255,255,255,.96),transparent 29rem),
    linear-gradient(135deg,#dff4fc 0%,#ffffff 43%,#eadcf4 100%)!important;
}
.client-welcome-stage{
  background:
    radial-gradient(circle at 10% 20%,rgba(87,181,221,.28),transparent 26rem),
    radial-gradient(circle at 88% 80%,rgba(171,113,205,.3),transparent 28rem),
    linear-gradient(145deg,#edf9fe 0%,#fff 46%,#eee1f6 100%)!important;
}
.content-hub-stage{
  background:
    radial-gradient(circle at 8% 12%,rgba(78,174,215,.38),transparent 28rem),
    radial-gradient(circle at 92% 26%,rgba(167,108,203,.4),transparent 29rem),
    linear-gradient(180deg,#e8f7fd 0%,#fff 42%,#eee2f6 100%)!important;
}
.about-story,.about-purpose,.events-page,.news-archive,.chapter-folder-stage,.contact-stage,
.article-reading,.chapter-reading,.not-found-stage{
  background:
    radial-gradient(circle at 8% 10%,rgba(89,183,222,.18),transparent 24rem),
    radial-gradient(circle at 92% 76%,rgba(170,110,204,.2),transparent 26rem),
    linear-gradient(145deg,#f2fbff 0%,#fff 48%,#f1e8f7 100%);
}
.inner-hero,.memoir-hero,.newsletter-page-hero,.article-hero,.chapter-hero{
  background:
    radial-gradient(circle at 12% 18%,rgba(87,180,220,.32),transparent 26rem),
    radial-gradient(circle at 88% 20%,rgba(167,108,202,.34),transparent 27rem),
    linear-gradient(135deg,#e8f7fd 0%,#fff 48%,#eee1f6 100%);
}
.resource-group-stage:nth-of-type(odd){background:linear-gradient(135deg,rgba(224,244,252,.9),rgba(255,255,255,.95) 48%,rgba(238,225,247,.86))}
.resource-group-stage:nth-of-type(even){background:linear-gradient(135deg,rgba(239,228,248,.92),rgba(255,255,255,.96) 52%,rgba(219,242,251,.88))}

/* The new line sits immediately beneath the logo disc, not on a distant arc. */
.client-hero-emblem{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding-bottom:clamp(34px,5vw,56px);
}
.client-hero-wordmark{inset:-4% 0 7%}
.client-hero-logo-disc{position:relative;z-index:4}
.client-hero-connected{
  position:absolute;
  z-index:6;
  left:50%;
  bottom:clamp(13%,14.5vw,18%);
  width:min(92%,680px);
  margin:0;
  transform:translateX(-50%);
  color:var(--dls-purple);
  font-size:clamp(.78rem,1.3vw,1.18rem);
  font-weight:850;
  line-height:1.15;
  letter-spacing:.19em;
  text-align:center;
  text-transform:uppercase;
  white-space:nowrap;
  text-shadow:0 4px 20px rgba(100,55,121,.12);
}

/* Creative six-part menu: each item behaves like a mini web composition. */
.content-hub-menu{
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:clamp(18px,2vw,28px);
}
.content-hub-menu .content-hub:not([open]){
  position:relative;
  min-height:clamp(190px,18vw,250px);
  overflow:hidden;
  border:1px solid rgba(74,39,96,.18);
  box-shadow:0 28px 75px rgba(60,35,77,.14);
  isolation:isolate;
}
.content-hub-menu .content-hub:not([open]):before,
.content-hub-menu .content-hub:not([open]):after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  z-index:-1;
}
.content-hub-menu .content-hub:not([open]):before{width:250px;height:250px;right:-80px;top:-100px;background:rgba(255,255,255,.35)}
.content-hub-menu .content-hub:not([open]):after{width:190px;height:190px;left:-75px;bottom:-100px;border:1px solid rgba(255,255,255,.48)}
.content-hub-menu .content-hub-book:not([open]){grid-column:span 7!important;background:linear-gradient(135deg,#293b78 0%,#6a3c91 58%,#c28fd7 100%)}
.content-hub-menu .content-hub-events:not([open]){grid-column:span 5!important;background:linear-gradient(135deg,#086f86,#25a8c1 58%,#b4e5ef)}
.content-hub-menu .content-hub-support:not([open]){grid-column:span 5!important;background:linear-gradient(135deg,#59266f,#9f5fbd 58%,#e0bce9)}
.content-hub-menu .content-hub-benefits:not([open]){grid-column:span 7!important;background:linear-gradient(135deg,#17586f,#258bab 52%,#b4e3ee)}
.content-hub-menu .content-hub-information:not([open]){grid-column:span 6!important;background:linear-gradient(135deg,#7f3e8f,#c172b8 54%,#f2c4de)}
.content-hub-menu .content-hub-carers:not([open]){grid-column:span 6!important;background:linear-gradient(135deg,#274a75,#5d77ad 54%,#bbd9ef)}
.content-hub-menu .content-hub[open]{grid-column:1/-1!important}
.content-hub-menu .content-hub:not([open]) summary{
  position:relative;
  min-height:clamp(190px,18vw,250px);
  padding:clamp(24px,3vw,38px);
  align-items:start;
  grid-template-columns:64px minmax(0,1fr) minmax(170px,42%) 44px;
  gap:18px;
}
.content-hub-menu .content-hub:not([open]) .content-hub-icon{
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.28);
  box-shadow:0 15px 38px rgba(22,12,31,.16);
  backdrop-filter:blur(14px);
}
.content-hub-menu .content-hub:not([open]) .content-hub-icon svg{stroke:#fff}
.content-hub-menu .content-hub:not([open]) .content-hub-heading strong{
  color:#fff;
  font-size:clamp(1.7rem,2.7vw,3.15rem);
  line-height:.98;
  text-shadow:0 8px 28px rgba(24,13,31,.18);
}
.content-hub-menu .content-hub:not([open]) .content-hub-heading>i{
  align-self:start;
  background:rgba(255,255,255,.17);
  border-color:rgba(255,255,255,.28);
}
.content-hub-menu .content-hub:not([open]) .content-hub-heading>i:before,
.content-hub-menu .content-hub:not([open]) .content-hub-heading>i:after{background:#fff}
.content-hub-menu-preview{
  position:relative;
  align-self:center;
  display:block;
  width:100%;
  min-width:0;
  height:clamp(112px,11vw,158px);
  perspective:700px;
}
.content-hub-menu-preview i{
  position:absolute;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.5);
  border-radius:15px;
  background:rgba(255,255,255,.9);
  color:#422657;
  box-shadow:0 18px 42px rgba(24,13,31,.22);
  font-style:normal;
  font-size:clamp(.56rem,.72vw,.75rem);
  font-weight:800;
  line-height:1.1;
  text-align:center;
  padding:9px;
}
.hub-preview-blog i{width:46%;height:75%;background-size:cover;background-position:center}
.hub-preview-blog i:nth-child(1){left:0;top:18%;transform:rotate(-6deg)}
.hub-preview-blog i:nth-child(2){left:27%;top:1%;z-index:2;transform:rotate(2deg)}
.hub-preview-blog i:nth-child(3){right:0;bottom:0;transform:rotate(7deg)}
.hub-preview-support i{width:58%;height:38%}
.hub-preview-support i:nth-child(1){left:0;top:0;transform:rotate(-3deg)}
.hub-preview-support i:nth-child(2){right:0;top:16%;z-index:2;transform:rotate(3deg)}
.hub-preview-support i:nth-child(3){left:5%;bottom:0;transform:rotate(2deg)}
.hub-preview-support i:nth-child(4){right:0;bottom:3%;transform:rotate(-4deg)}
.hub-preview-events i{width:44%;height:74%;top:14%;background:linear-gradient(180deg,#fff 0 23%,#e9f8fc 23%)}
.hub-preview-events i:before{content:"";width:62%;height:5px;border-radius:999px;background:#3a8fac;box-shadow:0 17px 0 #b9dce8,0 34px 0 #b9dce8}
.hub-preview-events i:nth-child(1){left:0;transform:rotate(-5deg)}
.hub-preview-events i:nth-child(2){left:28%;z-index:2;top:2%;transform:rotate(1deg)}
.hub-preview-events i:nth-child(3){right:0;transform:rotate(6deg)}
.hub-preview-benefits i{width:62%;height:58%;font-size:clamp(.8rem,1vw,1rem)}
.hub-preview-benefits i:nth-child(1){left:0;top:7%;transform:rotate(-4deg)}
.hub-preview-benefits i:nth-child(2){right:0;bottom:3%;background:#fff4d9;transform:rotate(5deg)}
.hub-preview-information i{width:45%;height:48%;border-radius:18px}
.hub-preview-information i:nth-child(1){left:0;top:4%;transform:rotate(-5deg)}
.hub-preview-information i:nth-child(2){right:4%;top:0;transform:rotate(5deg)}
.hub-preview-information i:nth-child(3){left:28%;bottom:0;z-index:2;background:#e8f5ff}
.hub-preview-carers i{width:68%;height:38%}
.hub-preview-carers i:nth-child(1){left:0;top:0;transform:rotate(-3deg)}
.hub-preview-carers i:nth-child(2){right:0;top:31%;transform:rotate(4deg)}
.hub-preview-carers i:nth-child(3){left:6%;bottom:0;transform:rotate(1deg)}

/* Expanded panels retain a clean readable canvas. */
.content-hub-menu .content-hub[open]{background:rgba(255,255,255,.96)}
.content-hub-menu .content-hub[open] .content-hub-menu-preview{display:none}

/* Support resource items become layered browser-window menu tiles. */
.resource-name-grid{
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:clamp(18px,2.2vw,28px);
}
.resource-name-grid .resource-visual-card{
  position:relative;
  display:grid;
  grid-template-rows:minmax(170px,1fr) auto;
  align-items:stretch;
  gap:0;
  min-height:260px;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(73,40,94,.16);
  border-radius:28px;
  background:#fff;
  box-shadow:0 28px 68px rgba(59,34,76,.12);
  transform:translateZ(0);
}
.resource-name-grid .resource-visual-card:hover{transform:translateY(-7px) rotate(.15deg);box-shadow:0 38px 85px rgba(59,34,76,.2)}
.resource-browser-window{
  position:relative;
  display:grid;
  grid-template-rows:30px 1fr;
  min-height:176px;
  overflow:hidden;
  background:linear-gradient(135deg,#e7f7fd,#eee2f7);
}
.resource-browser-bar{display:flex;align-items:center;gap:6px;padding:0 13px;background:rgba(255,255,255,.88);border-bottom:1px solid rgba(72,42,91,.09)}
.resource-browser-bar i{width:7px;height:7px;border-radius:50%;background:#f3a8b8}
.resource-browser-bar i:nth-child(2){background:#ffcf72}.resource-browser-bar i:nth-child(3){background:#64c8aa}
.resource-browser-canvas{position:relative;display:grid;place-items:center;padding:22px;overflow:hidden;text-align:center}
.resource-browser-canvas:before,.resource-browser-canvas:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.38)}
.resource-browser-canvas:before{width:150px;height:150px;right:-45px;top:-55px}
.resource-browser-canvas:after{width:105px;height:105px;left:-30px;bottom:-45px;border:1px solid rgba(255,255,255,.55);background:transparent}
.resource-browser-canvas b{position:relative;z-index:2;display:grid;place-items:center;width:72px;height:72px;border-radius:24px;background:rgba(255,255,255,.92);color:#532d6a;box-shadow:0 16px 36px rgba(52,29,69,.16);font-size:1.18rem;letter-spacing:.02em}
.resource-browser-canvas em{position:relative;z-index:2;margin-top:12px;color:#fff;font-size:1.06rem;font-style:normal;font-weight:800;line-height:1.15;text-shadow:0 4px 16px rgba(34,18,44,.25)}
.resource-browser-canvas>span{position:absolute;left:13%;right:13%;bottom:13px;height:4px;border-radius:999px;background:rgba(255,255,255,.45);box-shadow:0 -11px 0 rgba(255,255,255,.2)}
.resource-visual-card>.resource-name-copy{padding:18px 52px 20px 20px;background:#fff}
.resource-visual-card>.resource-name-copy strong{font-size:1.06rem}
.resource-visual-arrow{position:absolute;right:18px;bottom:19px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f0e5f7;color:#5e3478;font-weight:900}
.resource-visual-card.brand-alzheimers .resource-browser-canvas{background:linear-gradient(135deg,#005b89,#21a4bd)}
.resource-visual-card.brand-dementia-uk .resource-browser-canvas{background:linear-gradient(135deg,#7c245d,#d14d92)}
.resource-visual-card.brand-carers-uk .resource-browser-canvas{background:linear-gradient(135deg,#164f60,#5e9dac)}
.resource-visual-card.brand-sutton-carers .resource-browser-canvas{background:linear-gradient(135deg,#276f63,#63b58e)}
.resource-visual-card.brand-age-uk .resource-browser-canvas{background:linear-gradient(135deg,#c65422,#f2a14d)}
.resource-visual-card.brand-carers-trust .resource-browser-canvas{background:linear-gradient(135deg,#542b74,#9f5ebe)}
.resource-visual-card.brand-young-dementia .resource-browser-canvas{background:linear-gradient(135deg,#22728a,#5fc0d0)}
.resource-visual-card.brand-cea .resource-browser-canvas,.resource-visual-card.brand-access .resource-browser-canvas{background:linear-gradient(135deg,#335a9d,#72a7dc)}
.resource-visual-card.brand-carers-card .resource-browser-canvas{background:linear-gradient(135deg,#3d2f75,#8b62be)}
.resource-visual-card.brand-blue-light .resource-browser-canvas{background:linear-gradient(135deg,#15558f,#2fa9d5)}
.resource-visual-card.brand-carefree .resource-browser-canvas{background:linear-gradient(135deg,#3c7a5d,#7bc596)}
.resource-visual-card.brand-dcc .resource-browser-canvas{background:linear-gradient(135deg,#356e58,#78b994)}
.resource-visual-card.brand-care-rights .resource-browser-canvas{background:linear-gradient(135deg,#60377c,#a375bc)}
.resource-visual-card.brand-revitalise .resource-browser-canvas{background:linear-gradient(135deg,#9f4b72,#e29bbb)}
.resource-visual-card.brand-pathways .resource-browser-canvas{background:linear-gradient(135deg,#335a71,#74a9bd)}
.resource-visual-card.brand-gp .resource-browser-canvas,.resource-visual-card.brand-assessments .resource-browser-canvas{background:linear-gradient(135deg,#326d7b,#72b9c2)}
.resource-visual-card.brand-befriending .resource-browser-canvas,.resource-visual-card.brand-care-grieving .resource-browser-canvas{background:linear-gradient(135deg,#6b477e,#b58ac3)}
.resource-visual-card.brand-gym .resource-browser-canvas{background:linear-gradient(135deg,#3c6c78,#70b3bf)}

.resource-hero-aside-clean{padding:clamp(24px,3vw,38px);background:rgba(255,255,255,.72)!important}
.resource-hero-aside-clean .resource-hero-emblem{margin:0 auto}

@media(max-width:1024px){
  .content-hub-menu{grid-template-columns:1fr}
  .content-hub-menu .content-hub:not([open]){grid-column:auto!important}
  .content-hub-menu .content-hub:not([open]) summary{grid-template-columns:58px minmax(0,1fr) minmax(150px,38%) 40px}
  .client-hero-connected{bottom:14%;font-size:clamp(.72rem,1.8vw,1rem)}
}
@media(max-width:760px){
  .client-hero-connected{bottom:11.5%;width:94%;font-size:clamp(.62rem,2.6vw,.84rem);letter-spacing:.12em}
  .content-hub-menu .content-hub:not([open]){min-height:156px}
  .content-hub-menu .content-hub:not([open]) summary{
    min-height:156px;
    grid-template-columns:48px minmax(0,1fr) 34px;
    align-items:center;
    padding:20px;
  }
  .content-hub-menu-preview{display:none}
  .content-hub-menu .content-hub:not([open]) .content-hub-heading strong{font-size:clamp(1.42rem,6.4vw,2rem)}
  .resource-name-grid{grid-template-columns:1fr}
  .resource-name-grid .resource-visual-card{grid-template-columns:122px minmax(0,1fr);grid-template-rows:auto;min-height:138px}
  .resource-browser-window{min-height:138px;grid-template-rows:25px 1fr}
  .resource-browser-canvas{padding:12px}
  .resource-browser-canvas b{width:52px;height:52px;border-radius:17px;font-size:.9rem}
  .resource-browser-canvas em{display:none}
  .resource-visual-card>.resource-name-copy{align-self:center;padding:20px 48px 20px 17px}
}
@media(max-width:430px){
  .client-hero-connected{bottom:10%;font-size:.61rem;letter-spacing:.09em}
  .content-hub-menu .content-hub:not([open]){min-height:140px;border-radius:24px}
  .content-hub-menu .content-hub:not([open]) summary{min-height:140px;padding:16px 14px}
  .resource-name-grid .resource-visual-card{grid-template-columns:102px minmax(0,1fr);min-height:124px;border-radius:22px}
  .resource-browser-window{min-height:124px}
  .resource-browser-canvas b{width:46px;height:46px;border-radius:15px;font-size:.8rem}
}

@media(prefers-reduced-motion:reduce){
  .resource-name-grid .resource-visual-card:hover,.content-hub-menu .content-hub:hover{transform:none}
}

/* ==========================================================
   Version 5.4.0 — recognisable organisation-logo resource tiles
   Julie requested the real support/service logos in every relevant menu tile.
   ========================================================== */
.resource-name-grid{
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:clamp(18px,2.2vw,28px);
}
.resource-name-grid .resource-logo-card{
  position:relative;
  display:grid!important;
  grid-template-rows:minmax(172px,205px) auto;
  align-items:stretch!important;
  justify-content:stretch!important;
  gap:0!important;
  min-width:0;
  min-height:270px;
  padding:0!important;
  overflow:hidden;
  border:1px solid rgba(73,40,94,.16)!important;
  border-radius:28px!important;
  background:#fff!important;
  color:var(--ink);
  box-shadow:0 28px 68px rgba(59,34,76,.12)!important;
  transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .28s var(--ease);
}
.resource-name-grid .resource-logo-card:hover{
  transform:translateY(-7px);
  border-color:rgba(100,55,121,.3)!important;
  box-shadow:0 38px 85px rgba(59,34,76,.2)!important;
}
.resource-logo-media{
  position:relative;
  display:grid!important;
  place-items:center;
  min-width:0;
  min-height:172px;
  padding:26px 30px;
  overflow:hidden;
  border-bottom:1px solid rgba(73,40,94,.1);
  background:
    radial-gradient(circle at 88% 14%,rgba(226,207,238,.5),transparent 34%),
    radial-gradient(circle at 10% 85%,rgba(191,225,240,.46),transparent 36%),
    #fff;
}
.resource-logo-media:after{
  content:"";
  position:absolute;
  inset:12px;
  border:1px solid rgba(100,55,121,.07);
  border-radius:18px;
  pointer-events:none;
}
.resource-logo-media img{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  max-height:130px;
  object-fit:contain;
  object-position:center;
}
.resource-logo-card.logo-symbol .resource-logo-media img{max-width:64%;max-height:132px}
.resource-logo-card.logo-wide .resource-logo-media img,
.resource-logo-card.logo-wide-dark .resource-logo-media img{max-width:92%;max-height:118px}
.resource-logo-card>.resource-name-copy{
  display:grid!important;
  align-content:center;
  gap:7px;
  min-width:0;
  min-height:86px;
  padding:18px 54px 20px 21px!important;
  background:#fff;
}
.resource-logo-card>.resource-name-copy strong{
  color:var(--dls-purple-deep);
  font-size:1.05rem;
  line-height:1.25;
  overflow-wrap:break-word;
}
.resource-logo-card>.resource-name-copy small{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
  margin:0;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.45;
}
.resource-logo-card .resource-visual-arrow{
  position:absolute;
  right:18px;
  bottom:21px;
  z-index:2;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:#f0e5f7;
  color:#5e3478;
  font-weight:900;
}

/* Homepage expanded resource menus use the same real logos in a compact format. */
.content-hub-logo-grid{
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:14px;
}
.content-hub-logo-grid>.resource-logo-card{
  position:relative;
  display:grid!important;
  grid-template-columns:104px minmax(0,1fr);
  grid-template-rows:auto;
  align-items:stretch!important;
  justify-content:stretch!important;
  gap:0!important;
  min-width:0;
  min-height:116px!important;
  padding:0!important;
  overflow:hidden;
  border:1px solid rgba(100,55,121,.13)!important;
  border-radius:22px!important;
  background:#fff!important;
  color:var(--ink)!important;
  box-shadow:0 13px 30px rgba(70,45,88,.08)!important;
}
.content-hub-logo-grid>.resource-logo-card:hover{
  transform:translateY(-4px)!important;
  border-color:rgba(100,55,121,.27)!important;
  box-shadow:0 20px 42px rgba(70,45,88,.14)!important;
}
.content-hub-logo-grid .resource-logo-media{
  min-height:116px;
  padding:14px;
  border:0;
  border-right:1px solid rgba(100,55,121,.09);
}
.content-hub-logo-grid .resource-logo-media:after{inset:8px;border-radius:14px}
.content-hub-logo-grid .resource-logo-media img{max-height:78px}
.content-hub-logo-grid .logo-symbol .resource-logo-media img{max-width:72%;max-height:80px}
.content-hub-logo-grid .resource-logo-card>.resource-name-copy{
  align-self:stretch;
  align-content:center;
  min-height:0;
  padding:17px 46px 17px 16px!important;
}
.content-hub-logo-grid .resource-logo-card>.resource-name-copy strong{font-size:.93rem}
.content-hub-logo-grid .resource-logo-card>.resource-name-copy small{-webkit-line-clamp:2;font-size:.76rem}
.content-hub-logo-grid .resource-visual-arrow{right:12px;bottom:calc(50% - 15px);width:30px;height:30px}

/* Collapsed homepage menu previews show the same recognisable logos. */
.hub-preview-logos i{
  display:grid!important;
  place-items:center;
  padding:7px!important;
  background:#fff!important;
}
.hub-preview-logos i img{
  display:block;
  width:100%;
  height:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center;
}
.hub-preview-support.hub-preview-logos i,
.hub-preview-carers.hub-preview-logos i{font-size:0}

@media(max-width:760px){
  .resource-name-grid .resource-logo-card{
    grid-template-columns:126px minmax(0,1fr);
    grid-template-rows:auto;
    min-height:142px;
  }
  .resource-name-grid .resource-logo-media{
    min-height:142px;
    padding:17px;
    border-bottom:0;
    border-right:1px solid rgba(73,40,94,.1);
  }
  .resource-name-grid .resource-logo-media img{max-height:96px}
  .resource-name-grid .resource-logo-card.logo-symbol .resource-logo-media img{max-width:76%;max-height:94px}
  .resource-name-grid .resource-logo-card>.resource-name-copy{min-height:0;padding:18px 48px 18px 17px!important}
  .resource-name-grid .resource-logo-card .resource-visual-arrow{right:13px;bottom:calc(50% - 16px);width:32px;height:32px}
  .content-hub-logo-grid{grid-template-columns:1fr}
}
@media(max-width:430px){
  .resource-name-grid .resource-logo-card{grid-template-columns:104px minmax(0,1fr);min-height:126px;border-radius:22px!important}
  .resource-name-grid .resource-logo-media{min-height:126px;padding:13px}
  .resource-name-grid .resource-logo-media:after{inset:7px;border-radius:13px}
  .resource-name-grid .resource-logo-media img{max-height:82px}
  .content-hub-logo-grid>.resource-logo-card{grid-template-columns:94px minmax(0,1fr);min-height:106px!important}
  .content-hub-logo-grid .resource-logo-media{min-height:106px;padding:12px}
}
@media(prefers-reduced-motion:reduce){
  .resource-name-grid .resource-logo-card:hover,.content-hub-logo-grid>.resource-logo-card:hover{transform:none!important}
}
@media(max-width:430px){
  .resource-name-grid .resource-logo-card{grid-template-columns:120px minmax(0,1fr);min-height:132px}
  .resource-name-grid .resource-logo-media{min-height:132px;padding:14px}
}
@media(max-width:340px){
  .resource-name-grid .resource-logo-card{grid-template-columns:106px minmax(0,1fr)}
}

/* ==========================================================
   Version 5.5.0 — official source branding, no generic clipart
   Every resource/menu link now leads with the organisation or source brand.
   ========================================================== */
.resource-brand-cluster{
  position:relative;
  display:block;
  width:94px;
  height:70px;
  flex:0 0 auto;
}
.resource-brand-cluster i{
  position:absolute;
  display:grid;
  place-items:center;
  width:58px;
  height:42px;
  padding:6px;
  overflow:hidden;
  border:1px solid rgba(78,44,98,.14);
  border-radius:12px;
  background:#fff;
  box-shadow:0 11px 26px rgba(59,34,76,.14);
}
.resource-brand-cluster i:nth-child(1){left:0;top:5px;z-index:3;transform:rotate(-4deg)}
.resource-brand-cluster i:nth-child(2){right:0;top:0;z-index:2;transform:rotate(4deg)}
.resource-brand-cluster i:nth-child(3){left:20px;bottom:0;z-index:1;transform:rotate(1deg)}
.resource-brand-cluster i:nth-child(4){right:18px;bottom:0;z-index:4;transform:rotate(-1deg)}
.resource-brand-cluster img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.resource-brand-cluster-single{width:76px;height:58px}
.resource-brand-cluster-single i{inset:0;width:76px;height:58px;transform:none!important}

.content-hub-source-mark{
  display:grid;
  place-items:center;
  width:84px;
  height:64px;
  padding:9px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.58);
  border-radius:16px;
  background:#fff;
  box-shadow:0 15px 36px rgba(23,13,30,.18);
}
.content-hub-source-mark img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.content-hub-source-art{padding:0}
.content-hub-source-art img{object-fit:cover}
.content-hub-brand-cluster{width:94px;height:70px}

.content-hub-menu .content-hub:not([open]) summary{
  grid-template-columns:94px minmax(0,1fr) minmax(170px,42%) 44px;
}
.content-hub-menu .content-hub:not([open]) .resource-brand-cluster i{
  border-color:rgba(255,255,255,.7);
  box-shadow:0 14px 30px rgba(22,12,31,.24);
}
.content-hub-menu .content-hub[open] .content-hub-source-mark,
.content-hub-menu .content-hub[open] .resource-brand-cluster{
  width:78px;
  height:58px;
}
.content-hub-menu .content-hub[open] .resource-brand-cluster i{width:48px;height:35px;padding:5px}
.content-hub-menu .content-hub[open] .resource-brand-cluster i:nth-child(3){left:16px}
.content-hub-menu .content-hub[open] .resource-brand-cluster i:nth-child(4){right:12px;bottom:0}

.hub-preview-source-page i{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  transform:rotate(1.5deg)!important;
  background:#fff!important;
}
.hub-preview-source-page i img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

.resource-group-heading-branded{
  grid-template-columns:104px minmax(0,1fr)!important;
  align-items:center;
  max-width:320px;
}
.resource-group-heading-branded .resource-group-number{grid-column:1/-1}
.resource-group-heading-branded .resource-brand-cluster{width:100px;height:76px}
.resource-group-heading-branded .resource-heading-source-image{
  display:grid;
  place-items:center;
  width:100px;
  height:76px;
  padding:0;
  overflow:hidden;
  border:1px solid rgba(78,44,98,.14);
  border-radius:17px;
  background:#fff;
  box-shadow:0 16px 38px rgba(59,34,76,.12);
}
.resource-heading-source-image img{width:100%;height:100%;object-fit:cover;object-position:center}

.events-hero-source{
  width:min(100%,470px);
  padding:0!important;
  overflow:hidden;
  border:1px solid rgba(78,44,98,.14)!important;
  border-radius:34px!important;
  background:#fff!important;
  box-shadow:0 28px 74px rgba(64,39,81,.14);
}
.events-hero-source img{display:block;width:100%;height:auto;aspect-ratio:5/3;object-fit:cover;object-position:center}
.local-events-source-logo{
  display:grid;
  place-items:center;
  width:210px;
  min-height:120px;
  padding:20px;
  border:1px solid rgba(78,44,98,.14);
  border-radius:24px;
  background:#fff;
  box-shadow:0 18px 44px rgba(59,34,76,.12);
}
.local-events-source-logo img{width:100%;height:auto;max-height:86px;object-fit:contain}

/* Make the organisation itself the most visible part of every resource card. */
.resource-name-grid .resource-logo-card{grid-template-rows:minmax(188px,220px) auto}
.resource-logo-media{min-height:188px;padding:22px 26px;background:#fff}
.resource-logo-media:after{display:none}
.resource-logo-media img{max-height:150px}
.resource-logo-card.logo-wide .resource-logo-media img,
.resource-logo-card.logo-wide-dark .resource-logo-media img{max-height:142px;max-width:96%}
.resource-logo-card.logo-symbol .resource-logo-media img{max-height:145px;max-width:74%}

@media(max-width:1024px){
  .content-hub-menu .content-hub:not([open]) summary{grid-template-columns:84px minmax(0,1fr) minmax(150px,38%) 40px}
  .resource-group-heading-branded{grid-template-columns:94px minmax(0,1fr)!important}
  .resource-group-heading-branded .resource-brand-cluster,.resource-group-heading-branded .resource-heading-source-image{width:90px}
}
@media(max-width:760px){
  .content-hub-menu .content-hub:not([open]) summary{grid-template-columns:68px minmax(0,1fr) 34px}
  .content-hub-source-mark{width:64px;height:52px;border-radius:13px;padding:7px}
  .content-hub-brand-cluster{width:66px;height:54px}
  .content-hub-brand-cluster i{width:42px;height:31px;padding:4px;border-radius:9px}
  .content-hub-brand-cluster i:nth-child(3){left:13px}
  .resource-group-heading-branded{grid-template-columns:82px minmax(0,1fr)!important}
  .resource-group-heading-branded .resource-brand-cluster,.resource-group-heading-branded .resource-heading-source-image{width:78px;height:62px}
  .resource-group-heading-branded .resource-brand-cluster i{width:47px;height:34px;padding:4px}
  .resource-group-heading-branded .resource-brand-cluster i:nth-child(3){left:16px}.resource-group-heading-branded .resource-brand-cluster i:nth-child(4){right:10px;bottom:0}
  .events-hero-source{width:100%;max-width:520px}
  .local-events-source-logo{width:min(100%,260px)}
  .resource-name-grid .resource-logo-card{grid-template-columns:142px minmax(0,1fr);grid-template-rows:auto}
  .resource-name-grid .resource-logo-media{min-height:146px;padding:14px}
  .resource-name-grid .resource-logo-media img{max-height:108px}
}
@media(max-width:430px){
  .content-hub-menu .content-hub:not([open]) summary{grid-template-columns:60px minmax(0,1fr) 32px}
  .content-hub-source-mark{width:58px;height:48px}
  .content-hub-brand-cluster{width:58px;height:48px}
  .content-hub-brand-cluster i{width:38px;height:28px}
  .content-hub-brand-cluster i:nth-child(3){left:10px}
  .resource-group-heading-branded{grid-template-columns:72px minmax(0,1fr)!important}
  .resource-group-heading-branded .resource-brand-cluster,.resource-group-heading-branded .resource-heading-source-image{width:68px;height:56px}
  .resource-group-heading-branded .resource-brand-cluster i{width:42px;height:30px}
  .resource-group-heading-branded .resource-brand-cluster i:nth-child(3){left:13px}.resource-group-heading-branded .resource-brand-cluster i:nth-child(4){right:8px;bottom:0}
  .resource-name-grid .resource-logo-card{grid-template-columns:120px minmax(0,1fr);min-height:132px}
  .resource-name-grid .resource-logo-media{min-height:132px;padding:12px}
  .resource-name-grid .resource-logo-media img{max-height:92px}
}

/* Equal-width branded menu panels keep organisation names readable and professional. */
@media(min-width:1025px){
  .content-hub-menu .content-hub-book:not([open]),
  .content-hub-menu .content-hub-events:not([open]),
  .content-hub-menu .content-hub-support:not([open]),
  .content-hub-menu .content-hub-benefits:not([open]),
  .content-hub-menu .content-hub-information:not([open]),
  .content-hub-menu .content-hub-carers:not([open]){grid-column:span 6!important}
  .content-hub-menu .content-hub:not([open]) summary{
    grid-template-columns:84px minmax(150px,1fr) minmax(205px,42%) 42px;
    gap:16px;
  }
  .content-hub-menu .content-hub:not([open]) .content-hub-heading strong{
    font-size:clamp(1.55rem,2.2vw,2.6rem);
    line-height:1.02;
  }
}
@media(min-width:1025px){
  .content-hub-menu .content-hub-information:not([open]) summary{
    grid-template-columns:84px minmax(185px,1fr) minmax(185px,37%) 42px;
  }
  .content-hub-menu .content-hub-information:not([open]) .content-hub-heading strong{
    font-size:clamp(1.5rem,1.95vw,2.35rem);
  }
}

/* ==========================================================
   Version 5.6.0 — front-page aspect icons and unified blog book
   ========================================================== */
.content-aspect-icon{
  position:relative;
  z-index:2;
  display:grid;
  place-items:center;
  width:76px;
  height:76px;
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.55);
  border-radius:22px;
  background:rgba(255,255,255,.17);
  box-shadow:0 18px 42px rgba(24,13,31,.18);
  backdrop-filter:blur(14px);
}
.content-aspect-icon svg{
  width:40px;
  height:40px;
  fill:none;
  stroke:#fff;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.content-hub-menu .content-hub[open]:not(.content-hub-book-collection) .content-aspect-icon{
  border-color:rgba(100,55,121,.14);
  background:linear-gradient(145deg,#fff,var(--dls-pale-mauve));
  box-shadow:0 15px 34px rgba(81,50,99,.12);
}
.content-hub-menu .content-hub[open]:not(.content-hub-book-collection) .content-aspect-icon svg{stroke:var(--dls-purple)}

/* A single Blog / Being Forgotten icon controls one unified book composition. */
.content-hub-menu .content-hub-book-collection,
.content-hub-menu .content-hub-book-collection[open]{
  grid-column:1/-1!important;
  position:relative;
  padding:clamp(24px,3.5vw,48px)!important;
  overflow:hidden;
  border:1px solid rgba(77,42,98,.18);
  border-radius:clamp(30px,4vw,48px);
  background:
    radial-gradient(circle at 90% 5%,rgba(191,225,240,.65),transparent 29rem),
    radial-gradient(circle at 8% 95%,rgba(226,207,238,.72),transparent 30rem),
    linear-gradient(145deg,#fff 0%,#f4fbfe 48%,#f1e7f7 100%)!important;
  box-shadow:0 34px 88px rgba(58,34,76,.14);
  transform:none!important;
}
.content-hub-book-collection:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(100,55,121,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(100,55,121,.035) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,transparent,#000 16%,#000 85%,transparent);
}
.content-hub-book-heading{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:82px minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  margin-bottom:clamp(24px,3vw,38px);
}
.content-hub-book-heading .content-aspect-icon{
  width:82px;
  height:82px;
  border-color:rgba(100,55,121,.15);
  background:linear-gradient(145deg,#fff,#eadcf3);
  box-shadow:0 18px 42px rgba(72,43,91,.13);
}
.content-hub-book-heading .content-aspect-icon svg{width:45px;height:45px;stroke:var(--dls-purple)}
.content-hub-book-heading>div span{
  display:block;
  margin-bottom:4px;
  color:var(--mint-deep);
  font-size:.72rem;
  font-weight:850;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.content-hub-book-heading h2{
  margin:0;
  color:var(--dls-purple-deep);
  font-size:clamp(2.2rem,4vw,4.6rem);
  line-height:.95;
  letter-spacing:-.05em;
}
.content-hub-book-heading-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:11px 17px;
  border:1px solid rgba(100,55,121,.15);
  border-radius:999px;
  background:#fff;
  color:var(--dls-purple-deep);
  font-weight:760;
  box-shadow:0 12px 28px rgba(70,43,88,.08);
}
.content-hub-book-heading-link:hover{background:var(--dls-purple);color:#fff}

.being-forgotten-book{
  position:relative;
  z-index:1;
  padding:clamp(15px,2vw,24px) clamp(15px,2.4vw,28px) clamp(24px,3vw,38px);
  border-radius:clamp(24px,3vw,38px);
  background:linear-gradient(145deg,#432358,#6d3d82 60%,#39204e);
  box-shadow:0 28px 62px rgba(49,27,64,.28),inset 0 1px 0 rgba(255,255,255,.18);
}
.being-forgotten-book:before,
.being-forgotten-book:after{
  content:"";
  position:absolute;
  left:5%;
  right:5%;
  height:8px;
  border-radius:0 0 50% 50%;
  background:rgba(31,16,42,.22);
  filter:blur(7px);
}
.being-forgotten-book:before{top:19px}
.being-forgotten-book:after{bottom:14px}
.being-forgotten-book-spine{
  position:absolute;
  z-index:3;
  left:50%;
  top:20px;
  bottom:30px;
  width:2px;
  transform:translateX(-50%);
  background:linear-gradient(to bottom,transparent,rgba(82,48,97,.2) 12%,rgba(82,48,97,.28) 88%,transparent);
  box-shadow:0 0 18px rgba(75,42,89,.24);
  pointer-events:none;
}
.being-forgotten-book-pages{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:2px;
  overflow:hidden;
  border-radius:22px;
  background:#dfd4e4;
  box-shadow:0 18px 45px rgba(35,19,45,.22);
  perspective:1200px;
}
.being-forgotten-page{
  position:relative;
  display:grid;
  grid-template-rows:minmax(190px,1fr) auto;
  min-width:0;
  min-height:410px;
  overflow:hidden;
  border:0;
  background:
    repeating-linear-gradient(to bottom,rgba(95,62,109,.035) 0 1px,transparent 1px 28px),
    linear-gradient(100deg,#fff 0%,#fffdf9 72%,#f3edf4 100%);
  color:var(--ink);
  transition:transform .28s var(--ease),filter .28s var(--ease);
}
.being-forgotten-page:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:inset -12px 0 24px rgba(84,53,98,.07),inset 1px 0 0 rgba(88,57,101,.08);
}
.being-forgotten-page:first-child{border-radius:20px 0 0 20px;transform-origin:right center}
.being-forgotten-page:last-child{border-radius:0 20px 20px 0;transform-origin:left center}
.being-forgotten-page:hover{z-index:4;transform:translateY(-6px);filter:saturate(1.04)}
.being-forgotten-page-art{
  display:block;
  min-height:220px;
  margin:clamp(14px,1.7vw,22px) clamp(14px,1.7vw,22px) 0;
  overflow:hidden;
  border:1px solid rgba(100,55,121,.12);
  border-radius:14px;
  background:#f2edf3;
  box-shadow:0 12px 28px rgba(66,41,81,.1);
}
.being-forgotten-page-art img{width:100%;height:100%;object-fit:cover;object-position:center}
.being-forgotten-page-copy{
  position:relative;
  display:grid;
  align-content:start;
  min-height:150px;
  padding:clamp(18px,2vw,25px);
}
.being-forgotten-page-copy small{
  color:var(--mint-deep);
  font-size:.68rem;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.being-forgotten-page-copy strong{
  display:block;
  margin-top:7px;
  color:var(--dls-purple-deep);
  font-size:clamp(1.25rem,2vw,1.9rem);
  line-height:1.06;
  letter-spacing:-.025em;
}
.being-forgotten-page-copy em{
  align-self:end;
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:20px;
  color:var(--dls-purple);
  font-size:.84rem;
  font-style:normal;
  font-weight:800;
}

/* Three chapters also appear as one grouped collage around the main logo. */
.client-hero-feature-grouped .client-hero-feature-collage{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:3px;
  padding:4px;
  background:#fff;
}
.client-hero-feature-grouped .client-hero-feature-collage img{
  width:100%;
  height:100%;
  min-width:0;
  object-fit:cover;
}

@media(max-width:1024px){
  .content-hub-book-heading{grid-template-columns:74px minmax(0,1fr) auto}
  .content-hub-book-heading .content-aspect-icon{width:74px;height:74px}
  .being-forgotten-page{min-height:370px;grid-template-rows:minmax(175px,1fr) auto}
  .being-forgotten-page-art{min-height:190px}
}
@media(max-width:760px){
  .content-aspect-icon{width:58px;height:58px;border-radius:17px}
  .content-aspect-icon svg{width:31px;height:31px}
  .content-hub-book-heading{grid-template-columns:62px minmax(0,1fr);gap:14px}
  .content-hub-book-heading .content-aspect-icon{width:62px;height:62px;border-radius:18px}
  .content-hub-book-heading .content-aspect-icon svg{width:34px;height:34px}
  .content-hub-book-heading-link{grid-column:1/-1;justify-self:start;margin-left:76px}
  .being-forgotten-book{padding:13px 13px 22px}
  .being-forgotten-book-spine{display:none}
  .being-forgotten-book-pages{grid-template-columns:1fr;gap:1px;border-radius:18px}
  .being-forgotten-page{
    grid-template-columns:118px minmax(0,1fr);
    grid-template-rows:auto;
    min-height:148px;
  }
  .being-forgotten-page:first-child{border-radius:16px 16px 0 0}
  .being-forgotten-page:last-child{border-radius:0 0 16px 16px}
  .being-forgotten-page-art{min-height:148px;height:100%;margin:0;border:0;border-radius:0;box-shadow:none}
  .being-forgotten-page-copy{min-height:148px;padding:19px 17px}
  .being-forgotten-page-copy em{margin-top:14px}
  .content-hub-menu .content-hub:not([open]) summary{grid-template-columns:58px minmax(0,1fr) 34px}
}
@media(max-width:430px){
  .content-hub-book-collection{padding:20px 14px!important;border-radius:26px!important}
  .content-hub-book-heading{grid-template-columns:54px minmax(0,1fr)}
  .content-hub-book-heading .content-aspect-icon{width:54px;height:54px;border-radius:16px}
  .content-hub-book-heading .content-aspect-icon svg{width:30px;height:30px}
  .content-hub-book-heading h2{font-size:clamp(1.9rem,10vw,2.7rem)}
  .content-hub-book-heading-link{margin-left:68px;min-height:42px;padding:9px 14px;font-size:.86rem}
  .being-forgotten-page{grid-template-columns:98px minmax(0,1fr);min-height:132px}
  .being-forgotten-page-art,.being-forgotten-page-copy{min-height:132px}
  .being-forgotten-page-copy{padding:16px 13px}
  .being-forgotten-page-copy strong{font-size:1.12rem}
  .being-forgotten-page-copy em{font-size:.76rem}
  .content-aspect-icon{width:52px;height:52px}
  .content-aspect-icon svg{width:28px;height:28px}
  .content-hub-menu .content-hub:not([open]) summary{grid-template-columns:52px minmax(0,1fr) 32px}
}

/* Balanced desktop aspect menu: two wide panels, then three equal panels. */
@media(min-width:1025px){
  .content-hub-menu .content-hub-events:not([open]),
  .content-hub-menu .content-hub-support:not([open]){grid-column:span 6!important}
  .content-hub-menu .content-hub-benefits:not([open]),
  .content-hub-menu .content-hub-information:not([open]),
  .content-hub-menu .content-hub-carers:not([open]){grid-column:span 4!important}
  .content-hub-menu .content-hub-benefits:not([open]) summary,
  .content-hub-menu .content-hub-information:not([open]) summary,
  .content-hub-menu .content-hub-carers:not([open]) summary{
    grid-template-columns:76px minmax(0,1fr) 40px;
  }
  .content-hub-menu .content-hub-benefits:not([open]) .content-hub-menu-preview,
  .content-hub-menu .content-hub-information:not([open]) .content-hub-menu-preview,
  .content-hub-menu .content-hub-carers:not([open]) .content-hub-menu-preview{display:none}
  .content-hub-menu .content-hub-benefits:not([open]) .content-hub-heading strong,
  .content-hub-menu .content-hub-information:not([open]) .content-hub-heading strong,
  .content-hub-menu .content-hub-carers:not([open]) .content-hub-heading strong{
    font-size:clamp(1.35rem,1.75vw,2.1rem);
  }
}


/* ==========================================================
   Version 5.7.0 — current events, clear blog identity and source-led icons
   ========================================================== */
.content-aspect-icon{
  overflow:hidden;
}
.content-aspect-wordmark{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  padding:9px 7px;
  text-align:center;
  line-height:1;
}
.content-aspect-wordmark strong{
  display:block;
  color:inherit;
  font-size:clamp(.72rem,1vw,.92rem);
  font-weight:900;
  letter-spacing:-.025em;
}
.content-aspect-wordmark small{
  display:block;
  margin-top:5px;
  color:inherit;
  font-size:clamp(.55rem,.72vw,.7rem);
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.content-hub-menu .content-hub-book-collection .content-aspect-wordmark{color:var(--dls-purple-deep)}
.content-aspect-source-image{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.content-aspect-icon-events{padding:0;background:#fff}
.content-aspect-icon-support,
.content-aspect-icon-information,
.content-aspect-icon-carers{
  width:94px;
  background:rgba(255,255,255,.96);
}
.content-aspect-icon .resource-brand-cluster{transform:scale(.82);transform-origin:center}
.content-aspect-icon .resource-brand-cluster i{box-shadow:0 8px 18px rgba(42,25,54,.14)}
.content-aspect-image-pair{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4px;
  width:100%;
  height:100%;
  padding:5px;
}
.content-aspect-image-pair img{
  width:100%;
  height:100%;
  min-width:0;
  object-fit:cover;
  border-radius:9px;
  background:#fff;
}

/* Actual event flyers lead the Local Events experience. */
.events-hero-source img{
  width:100%;
  height:100%;
  max-height:620px;
  object-fit:contain;
  object-position:center;
  background:#fff;
}
.event-ledger-art{
  min-height:260px;
  background:#fff;
}
.event-ledger-art img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:#fff;
}
.event-ledger time{
  color:var(--dls-purple-deep);
  font-weight:850;
  line-height:1.35;
}

/* Concessionary gym membership is represented by both recognised providers. */
.resource-logo-card-dual{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(190px,.55fr) minmax(0,1.45fr);
  gap:20px;
  align-items:center;
  min-width:0;
  min-height:180px;
  padding:22px;
  border:1px solid rgba(100,55,121,.13);
  border-radius:26px;
  background:linear-gradient(145deg,#fff,#f5f0f8 58%,#edf8fc);
  box-shadow:0 18px 48px rgba(67,42,84,.09);
}
.resource-logo-card-dual>.resource-name-copy{padding:0!important}
.resource-logo-card-dual>.resource-name-copy strong{font-size:1.14rem;color:var(--dls-purple-deep)}
.resource-dual-sources{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  min-width:0;
}
.resource-dual-sources>a{
  display:grid;
  grid-template-rows:92px auto;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(100,55,121,.12);
  border-radius:19px;
  background:#fff;
  color:var(--dls-purple-deep);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease);
}
.resource-dual-sources>a:hover{transform:translateY(-4px);box-shadow:0 18px 34px rgba(64,39,81,.12)}
.resource-dual-sources .resource-logo-media{
  display:grid;
  place-items:center;
  min-height:92px;
  padding:12px 18px;
  border-bottom:1px solid rgba(100,55,121,.09);
  background:#fff;
}
.resource-dual-sources .resource-logo-media img{max-width:100%;max-height:68px;object-fit:contain}
.resource-dual-sources>a>span:last-child{padding:12px 15px;font-size:.84rem;font-weight:800}
.resource-dual-sources i{float:right;font-style:normal;color:var(--dls-purple)}

/* Deeper purple-blue Explore/footer area requested by Julie. */
.site-footer:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.92),transparent 92%);
}
.footer-orbit{border-color:rgba(186,210,255,.18);box-shadow:0 0 0 70px rgba(128,76,167,.08),0 0 0 140px rgba(49,136,190,.06)}

@media(max-width:900px){
  .resource-logo-card-dual{grid-template-columns:1fr}
  .resource-logo-card-dual>.resource-name-copy{padding:0 4px!important}
}
@media(max-width:700px){
  .content-aspect-icon-support,.content-aspect-icon-information,.content-aspect-icon-carers{width:70px}
  .content-aspect-icon .resource-brand-cluster{transform:scale(.66)}
  .resource-dual-sources{grid-template-columns:1fr}
  .resource-logo-card-dual{padding:17px;border-radius:22px}
  .event-ledger-art{min-height:220px}
}
@media(max-width:430px){
  .content-aspect-icon-support,.content-aspect-icon-information,.content-aspect-icon-carers{width:58px}
  .content-aspect-wordmark strong{font-size:.64rem}
  .content-aspect-wordmark small{font-size:.5rem}
  .resource-logo-card-dual{min-height:0}
  .resource-dual-sources>a{grid-template-rows:78px auto}
  .resource-dual-sources .resource-logo-media{min-height:78px}
}

/* Keep the two-source gym membership tile readable inside compact homepage grids. */
@media(max-width:900px){
  .content-hub-logo-grid>.resource-logo-card-dual,
  .resource-name-grid>.resource-logo-card-dual{
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
  }
  .content-hub-logo-grid>.resource-logo-card-dual>.resource-name-copy,
  .resource-name-grid>.resource-logo-card-dual>.resource-name-copy{
    min-height:0!important;
    width:100%;
    padding:0 2px 4px!important;
  }
  .resource-logo-card-dual>.resource-name-copy strong{font-size:1.05rem;line-height:1.25}
}

/* Version 5.8.0 — Sutton Carers Centre is now a first-line branded Support source in homepage and Support-page previews. */
