/* SDEA site styles (2026 reskin)
   One stylesheet for every page. Page content keeps its original markup;
   the "legacy content" section below restyles the old classes. */

@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/poppins-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/poppins-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/poppins-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/poppins-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/inter-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/inter-latin-600-normal.woff2) format("woff2")}

:root{
  --ink:#1c1c1e;--ink-2:#46464c;--muted:#6b6b72;--rule:#e3e3e6;--soft:#f4f5f6;--paper:#fff;
  --teal:#22b491;--teal-d:#0d7d63;--teal-l:#e6f6f1;
  --blue:#3e93cd;--blue-d:#2b78b5;--blue-l:#eaf3fa;
  --red:#ef3246;--red-d:#d92639;
  --amber:#f8ad26;--amber-l:#fef4e0;
  --magenta:#e0287a;--magenta-d:#cc1f6e;
  --head:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --wrap:1240px;--gut:28px;--r:12px;
  --stripe:linear-gradient(90deg,var(--teal) 0 25%,var(--blue) 25% 50%,var(--red) 50% 75%,var(--amber) 75%);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans)}
img{max-width:100%;height:auto;border:0}
a{color:var(--blue-d)}
a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
h1,h2,h3,h4{font-family:var(--head);line-height:1.15;letter-spacing:-.01em;margin:0 0 .5em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:6px;font:600 14px var(--head);text-decoration:none}
.skip:focus{top:12px;color:#fff}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;border:0;font:700 15px var(--head);text-decoration:none;cursor:pointer;background:var(--ink);color:#fff}
.btn:hover{color:#fff;background:#000}
.btn.teal{background:var(--teal);color:#05291f}
.btn.teal:hover{background:#1ea383;color:#05291f}
.btn.line{background:none;color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink)}
.btn.line:hover{background:var(--ink);color:#fff}
.btn.cra{background:var(--magenta-d);color:#fff}
.btn.cra:hover{background:#b01a5e}
.btn.line-w{background:none;color:#fff;box-shadow:inset 0 0 0 2px #fff}
.btn.line-w:hover{background:#fff;color:var(--ink)}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.ext::after{content:" \2197";font-weight:400}

/* ---------- header ---------- */
.site-head{background:#fff;position:relative;z-index:50}
.site-head::before{content:"";display:block;height:5px;background:var(--stripe)}
.head-row{display:flex;align-items:center;gap:24px;min-height:84px}
.logo{display:block;flex:none;margin-right:auto}
.logo img{display:block;width:auto;height:54px}
.util{display:flex;align-items:center;gap:22px;font:500 14px var(--head)}
.util a{color:var(--ink);text-decoration:none}
.util a:hover{text-decoration:underline;text-underline-offset:4px}
.util .tel{color:var(--ink-2)}
.util .join{background:var(--ink);color:#fff;padding:10px 18px;border-radius:999px;font-weight:600}
.util .join:hover{background:#000;text-decoration:none}
.menu-btn{display:none;align-items:center;gap:8px;border:0;background:var(--ink);color:#fff;font:600 15px var(--head);height:44px;padding:0 16px;border-radius:999px;cursor:pointer}
.menu-btn svg{width:20px;height:20px}
.menu-btn .x{display:none}
.nav-open .menu-btn .x{display:block}
.nav-open .menu-btn .bars{display:none}

.site-nav{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:#fff}
.nav{list-style:none;margin:0 0 0 -12px;padding:0;display:flex;align-items:stretch;gap:4px}
.nav>li{position:relative;display:flex;align-items:center}
.nav>li>a{display:block;padding:15px 12px;font:500 15px var(--head);color:var(--ink);text-decoration:none;white-space:nowrap}
.nav>li>a:hover,.nav>li.open>a{color:var(--teal-d)}
.nav>li.is-current>a{color:var(--teal-d);box-shadow:inset 0 -3px 0 var(--teal)}
.nav>li.awards>a{display:flex;align-items:center;gap:7px}
.nav>li.awards>a img{width:auto;height:18px}
.nav>li.awards.is-current>a{color:var(--magenta-d);box-shadow:inset 0 -3px 0 var(--magenta)}
.nav .m-only{display:none}
.sub-btn{border:0;background:none;padding:0 6px 0 0;margin-left:-8px;height:44px;cursor:pointer;color:var(--ink-2)}
.sub-btn::before{content:"";display:block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px)}
.sub{list-style:none;margin:0;padding:10px;position:absolute;left:0;top:100%;min-width:250px;background:#fff;border-radius:0 0 12px 12px;box-shadow:0 0 0 1px var(--rule),0 22px 40px -18px rgba(0,0,0,.35);display:none}
.sub a{display:block;padding:9px 12px;border-radius:8px;color:var(--ink);text-decoration:none;font:500 15px var(--sans)}
.sub a:hover{background:var(--soft);color:var(--ink)}
.sub a[aria-current]{background:var(--teal-l);font-weight:600}
.awards .sub a[aria-current]{background:#fbe6ef}
@media (hover:hover){.nav>li.has-sub:hover>.sub{display:block}}
.nav>li.has-sub:focus-within>.sub,.nav>li.open>.sub{display:block}

/* ---------- footer ---------- */
.site-foot{background:var(--soft);margin-top:88px;font-size:15px}
.site-foot::before{content:"";display:block;height:6px;background:var(--stripe)}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-top:52px;padding-bottom:36px}
.foot-org>img{display:block;height:50px;width:auto;margin-bottom:16px}
.foot-org address{font-style:normal;color:var(--ink-2);line-height:1.75}
.foot-org a{color:var(--ink-2)}
.social{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:16px}
.social a{display:inline-flex;align-items:center;gap:7px;color:var(--ink);text-decoration:none;font:500 14px var(--head)}
.social a:hover{text-decoration:underline}
.social img{width:16px;height:16px;object-fit:contain}
.site-foot h2{font:700 15px var(--head);margin:0 0 12px}
.site-foot ul{list-style:none;margin:0;padding:0}
.site-foot li{margin:0 0 8px}
.site-foot li a{color:var(--ink-2);text-decoration:none}
.site-foot li a:hover{color:var(--ink);text-decoration:underline}
.legal{display:flex;flex-wrap:wrap;gap:8px 22px;border-top:1px solid #dcdde0;padding:18px 0 28px;font-size:14px;color:var(--muted)}
.legal a{color:var(--muted)}
.legal span{margin-right:auto}

/* ---------- content pages ---------- */
.page-top{border-bottom:1px solid var(--rule);background:#fff}
.page-top .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;min-height:56px;padding-top:10px;padding-bottom:10px}
.crumbs{font:500 14px var(--head);color:var(--muted)}
.crumbs a{color:var(--ink-2);text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.crumbs .sep{margin:0 8px;color:#b4b4ba}
.pager{display:flex;gap:8px}
.pager a{display:inline-flex;align-items:center;height:36px;padding:0 14px;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--rule);color:var(--ink);text-decoration:none;font:600 13px var(--head)}
.pager a:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}
.page-body{display:grid;grid-template-columns:minmax(0,1fr);gap:56px;padding-top:44px}
.page-body.has-aside{grid-template-columns:minmax(0,1fr) 300px}
.side{position:sticky;top:24px;align-self:start}
.side>img,.side>a>img{display:block;border-radius:var(--r)}
.side>*+*{margin-top:18px}
.aside-card{border-radius:14px;background:var(--soft);padding:20px 22px}
.aside-card h2{font:700 18px/1.25 var(--head);margin:0 0 6px}
.aside-card p{margin:0 0 14px;color:var(--ink-2);font-size:15px;line-height:1.5}
.aside-card .btn{min-height:42px;padding:0 18px;font-size:14px}
.aside-card.st{display:grid;grid-template-columns:84px minmax(0,1fr);gap:0 16px;align-items:start}
.aside-card.st>a:first-child{grid-row:1/4}
.aside-card.st img{display:block;width:84px;height:auto;border-radius:4px;box-shadow:0 10px 20px -10px rgba(0,0,0,.5)}
.aside-card.st .eyebrow{margin:0 0 4px}
.aside-card.st h2{margin-bottom:12px}
.aside-card.st .btn{justify-self:start}

/* prose: original page content */
.prose{max-width:760px;font-size:17px;line-height:1.7;color:var(--ink-2)}
.prose h1{font:800 clamp(30px,3.6vw,44px)/1.1 var(--head);color:var(--ink);letter-spacing:-.02em;margin:0 0 14px}
.prose .meta{font:600 14px var(--head);color:var(--muted);margin:0 0 28px}
.prose .meta a{color:var(--teal-d);text-decoration:none}
.prose h2,.prose h3{color:var(--ink);margin-top:1.6em}
.prose p{margin:0 0 1.1em}
.prose img{border-radius:10px;margin:6px 0}
.prose img[align=left],.prose img[style*="float:left"],.prose img[style*="float: left"]{float:left;margin:4px 24px 12px 0}
.prose img[align=right],.prose img[style*="float:right"],.prose img[style*="float: right"]{float:right;margin:4px 0 12px 24px}
.prose table{max-width:100%;border-collapse:collapse}
.prose td{vertical-align:top}
.prose iframe,.prose video{max-width:100%}
.prose ul,.prose ol{padding-left:1.3em}
.prose li{margin-bottom:.4em}
.prose hr{border:0;border-top:1px solid var(--rule);margin:32px 0}
.prose::after{content:"";display:table;clear:both}
/* legacy content classes */
.prose .sdeaBodycopy,.prose .sdeaBodycopynew,.prose .membersBodycopy{font:inherit;color:inherit;line-height:inherit}
.prose .whatsnewHeaders,.prose .sdeadarkerblue,.prose .largegreyheaders{font:700 22px/1.25 var(--head);color:var(--ink)}
.prose .sdeaFooter{font:500 14px var(--head);color:var(--muted)}
.prose td.sdeaFooter,.prose div.sdeaFooter,.prose td.sdeaBodycopy{font:inherit;color:inherit}
.aside-card.more ul,.more-list ul{list-style:none;margin:0;padding:0}
.aside-card.more li{border-top:1px solid #e1e2e5}
.aside-card.more li a{display:block;padding:8px 0;color:var(--ink);text-decoration:none;font:500 15px var(--sans)}
.aside-card.more li a:hover,.aside-card.more li a[aria-current]{color:var(--teal-d);font-weight:600}
.more-list{margin-top:28px}
.more-list h2{font:700 22px var(--head);margin:0 0 12px}
.more-list ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.more-list li a{display:block;padding:14px 16px;border-radius:12px;background:var(--soft);color:var(--ink);text-decoration:none;font:600 15px var(--head)}
.more-list li a:hover{background:var(--ink);color:#fff}
.prose font{font-family:inherit!important;font-size:inherit!important}
.prose .Blue_heading,.prose .blueheading,.prose .membersBlue_heading{font:700 20px/1.3 var(--head);color:var(--ink);margin:1.4em 0 .5em}
.prose .loginheaderfont{display:block;font:600 16px/1.4 var(--head);color:var(--muted);margin:0 0 1em}
.prose .style5,.prose .style8{color:inherit}
.prose table{width:100%!important;max-width:100%;border-collapse:collapse}
.prose td,.prose th{padding:0 14px 12px 0;vertical-align:top;height:auto!important}
.prose td>p:first-child{margin-top:0}
.prose td img{margin:0}
.prose input[type=text],.prose input[type=email],.prose input[type=password],.prose textarea,.prose select{font:15px var(--sans);border:1.5px solid #cfd2d6;border-radius:8px;padding:8px 10px;max-width:100%}
.prose input[type=submit],.prose button{font:700 14px var(--head);border:0;border-radius:999px;background:var(--ink);color:#fff;padding:10px 20px;cursor:pointer}
.prose span[style*="Arial"]{font-family:inherit!important}
.prose strong,.prose b{color:var(--ink);font-weight:600}
.prose p:empty{display:none}
.prose .actions{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 8px;padding-top:24px;border-top:1px solid var(--rule)}
.prose .actions a{display:inline-flex;align-items:center;min-height:42px;padding:0 18px;border-radius:999px;background:var(--soft);color:var(--ink);text-decoration:none;font:600 14px var(--head)}
.prose .actions a:hover{background:var(--ink);color:#fff}
.prose .actions a:hover strong{color:#fff}
.prose .actions>a:first-child{background:var(--ink);color:#fff}
.prose .actions>a:first-child strong{color:#fff}
.prose .actions .style1,.prose .actions .sep{display:none}
.prose .contact{background:var(--soft);border-radius:var(--r);padding:18px 22px;font-size:16px}

.prose table.legacy{width:100%!important;margin:0}
.prose table.legacy>tbody>tr>td,.prose table.legacy>tr>td{padding:0 18px 14px 0}
.pager .loggedin{display:inline-flex;align-items:center;height:36px;padding:0 6px;font:500 13px var(--head);color:var(--muted)}

/* ---------- homepage ---------- */
.eyebrow{font:600 14px var(--head);color:var(--teal-d);margin:0 0 12px;letter-spacing:.02em}
.home-hero .wrap{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:64px;align-items:center;padding-top:44px;padding-bottom:56px}
.home-hero h1{font:800 clamp(40px,5vw,70px)/1.02 var(--head);letter-spacing:-.025em;margin:0 0 18px}
.home-hero .lede{font-size:18px;color:var(--ink-2);margin:0 0 28px;max-width:46ch}
.search{display:grid;grid-template-columns:minmax(0,1fr) auto;background:#fff;border-radius:14px;box-shadow:0 0 0 2px var(--ink),0 16px 30px -18px rgba(0,0,0,.4);overflow:hidden}
.search input{border:0;font:17px var(--sans);color:var(--ink);padding:0 20px;height:64px;min-width:0;width:100%;background:#fff;-webkit-appearance:none;appearance:none}
.search input:focus-visible{outline:none;background:#eef8f5}
.search button{border:0;background:var(--teal);color:#05291f;font:700 16px var(--head);padding:0 30px;cursor:pointer}
.search button:hover{background:#1fa887}
.search:focus-within{box-shadow:0 0 0 3px var(--ink),0 16px 30px -18px rgba(0,0,0,.4)}
.pop{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;align-items:center}
.pop span{font:500 14px var(--head);color:var(--muted);margin-right:4px}
.pop a{font:500 14px var(--sans);color:var(--ink);text-decoration:none;background:var(--soft);padding:7px 12px;border-radius:999px}
.pop a:hover{background:#e3e5e8;color:var(--ink)}
.pop a.cat{background:none;box-shadow:inset 0 0 0 1.5px var(--rule);font-weight:600}
.mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:10px;aspect-ratio:1;position:relative;margin-right:22px}
.mosaic figure{margin:0;position:relative;overflow:hidden;border-radius:10px;background:var(--soft)}
.mosaic img{width:100%;height:100%;object-fit:cover}
.mosaic figcaption{position:absolute;left:8px;bottom:8px;right:8px;background:rgba(255,255,255,.94);border-radius:6px;padding:7px 10px;font:500 12px/1.3 var(--sans)}
.mosaic figcaption b{display:block;font:600 13px var(--head)}
.mosaic figcaption a{color:var(--teal-d);font-weight:600;text-underline-offset:2px}
.mosaic::after{content:"";position:absolute;right:-22px;top:12%;bottom:12%;width:10px;background:linear-gradient(var(--teal) 0 25%,var(--blue) 25% 50%,var(--red) 50% 75%,var(--amber) 75%);border-radius:5px}

.doors{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding-bottom:72px}
.door{border-radius:14px;padding:26px 24px 24px;display:flex;flex-direction:column;min-height:300px;text-decoration:none;position:relative}
.door h2{font:800 30px/1.02 var(--head);margin:0 0 10px;letter-spacing:-.01em}
.door p{margin:0 0 16px;font-size:15px}
.door .go{margin-top:auto;font:700 15px var(--head);display:inline-flex;align-items:center;gap:10px;color:inherit;text-decoration:none;align-self:flex-start}
.door .go::after{content:"";width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.9) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c1c1e' stroke-width='2.4'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E") center/14px no-repeat;transition:transform .2s}
a.door:hover .go::after,.door a.go:hover::after{transform:translateX(4px)}
.d-teal{background:var(--teal);color:#05291f}
.d-teal:hover{background:#1fa887;color:#05291f}
.d-blue{background:var(--blue-d);color:#fff}
.d-blue:hover{background:#256ba3;color:#fff}
.d-red{background:var(--red-d);color:#fff}
.d-amber{background:var(--amber);color:#2e1c00}
.door ul{margin:0 0 16px;padding:0;list-style:none;font-size:15px}
.door li{padding:7px 0;border-top:1px solid rgba(255,255,255,.35)}
.door form label{display:block;font:600 13px var(--head);margin:0 0 4px}
.door form input{display:block;width:100%;height:40px;border:0;border-radius:6px;padding:0 10px;font:15px var(--sans);color:var(--ink);margin-bottom:10px}
.door form button{height:42px;border:0;border-radius:999px;background:#fff;color:var(--red-d);font:700 15px var(--head);padding:0 22px;cursor:pointer}
.door form button:hover{background:var(--ink);color:#fff}
.door form .row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px}
.door form .row a{font-size:13px;color:#fff}
.az{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 16px}
.az a{width:26px;height:26px;display:grid;place-items:center;border-radius:5px;background:rgba(255,255,255,.55);color:#2e1c00;text-decoration:none;font:600 13px var(--head)}
.az a:hover{background:#fff;color:#2e1c00}

.insp{background:var(--soft)}
.insp .wrap{padding-top:64px;padding-bottom:64px}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px;scrollbar-width:thin}
.proj{scroll-snap-align:start;background:#fff;border-radius:14px;overflow:hidden;text-decoration:none;color:var(--ink);display:flex;flex-direction:column}
.proj:hover{color:var(--ink);box-shadow:0 0 0 2px var(--ink)}
.proj img{display:block;aspect-ratio:4/5;object-fit:cover;width:100%;height:auto}
.proj div{padding:14px 16px 16px}
.proj h3{font:700 17px/1.25 var(--head);margin:0 0 4px}
.proj p{margin:0;font-size:14px;color:var(--muted)}
.proj .by{display:inline-block;margin-top:10px;font:600 13px var(--head);color:var(--teal-d)}
.proj .by.n{color:var(--muted);font-weight:500}

.features{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:72px}
.feature{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;align-items:center;border-radius:18px;padding:24px;background:var(--soft)}
.feature img{border-radius:6px;box-shadow:0 14px 28px -14px rgba(0,0,0,.45)}
.feature h2{font:800 26px/1.12 var(--head);margin:4px 0 8px}
.feature p{margin:0 0 16px;color:var(--ink-2)}
.feature .eyebrow{margin:0}
.feature.cra{background:#1c1c1e;color:#fff;grid-template-columns:150px minmax(0,1fr)}
.feature.cra .eyebrow{color:#ff7fb6}
.feature.cra p{color:#d4d4da}
.feature.cra .mark{width:120px;height:auto;box-shadow:none;border-radius:0;justify-self:center}

.why .sec-h{margin-bottom:28px}
.ben{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 20px}
.ben div{border-top:5px solid var(--c);padding-top:14px}
.ben h3{font:700 19px var(--head);margin:0 0 6px}
.ben p{margin:0;color:var(--ink-2);font-size:15px}
.quote{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;margin-top:44px;padding:30px 34px;border-radius:14px;background:var(--soft)}
.quote blockquote{margin:0;font:600 22px/1.4 var(--head)}
.quote cite{display:block;margin-top:8px;font:400 15px var(--sans);font-style:normal;color:var(--muted)}
.btn.blue{background:var(--blue-d);color:#fff;min-height:50px;padding:0 26px;font-size:16px}
.btn.blue:hover{background:#256ba3;color:#fff}

.app{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;margin-top:64px;border-radius:18px;padding:26px 30px;box-shadow:inset 0 0 0 1.5px var(--rule)}
.app h2{font:700 22px/1.2 var(--head);margin:0 0 6px}
.app p{margin:0;color:var(--ink-2)}
.app .stores{display:flex;align-items:center;gap:12px}
.app .stores img{height:46px;width:auto;border-radius:0}

.partners{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:28px 56px;margin-top:56px;padding-top:36px;border-top:1px solid var(--rule)}
.partners img{height:64px;width:auto}

/* ---------- member profile ---------- */
.mp{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:56px;align-items:start}
.mp-name{font:800 clamp(30px,3.6vw,46px)/1.08 var(--head);letter-spacing:-.02em;margin:0 0 18px}
.mp-addr{margin:0 0 20px;color:var(--ink-2);line-height:1.7}
.mp-contact{list-style:none;margin:0 0 18px;padding:18px 22px;background:var(--soft);border-radius:var(--r);display:grid;gap:8px}
.mp-contact li{display:grid;grid-template-columns:80px minmax(0,1fr);gap:12px;overflow-wrap:anywhere}
.mp-contact span{font:600 13px/1.9 var(--head);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.mp-contact a{font-weight:600}
.mp-map a{font:600 15px var(--head)}
.mp-social{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.mp-social a{display:inline-flex;align-items:center;gap:9px;min-height:42px;padding:0 18px 0 14px;border-radius:999px;background:var(--soft);color:var(--ink);text-decoration:none;font:600 14px var(--head)}
.mp-social a:hover{background:var(--ink);color:#fff}
.mp-social svg{width:18px;height:18px;flex:none}
.mp-social small{font:500 13px var(--sans);color:var(--muted);margin-left:2px}
.mp-social a:hover small{color:#d4d4da}
.mp-social a.ig svg{color:#c13584}
.mp-social a.li svg{color:#0a66c2}
.mp-social a.fb svg{color:#1877f2}
.mp-social a.x svg{color:#000}
.mp-social a.yt svg{color:#ff0000}
.mp-social a:hover svg{color:#fff}
.mp-social a.enq-btn{background:var(--teal);color:#05291f;padding:0 20px}
.mp-social a.enq-btn:hover{background:var(--ink);color:#fff}
.mp-news{margin-top:36px;padding-top:24px;border-top:1px solid var(--rule)}
.mp-news h2,.mp-enq h2{font:800 24px/1.15 var(--head);letter-spacing:-.01em;margin:0 0 14px}
.mp-news ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.mp-news li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:12px 16px;border-radius:12px;background:var(--soft)}
.mp-news li a{font:600 15px/1.35 var(--head);color:var(--ink);text-decoration:none}
.mp-news li a:hover{text-decoration:underline}
.mp-news li span{font-size:13px;color:var(--muted)}
.mp-enq{margin-top:36px;padding:28px;border-radius:18px;box-shadow:inset 0 0 0 1.5px var(--rule);scroll-margin-top:20px}
.mp-enq>p{margin:0 0 18px;color:var(--ink-2)}
.enq{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.enq .full{grid-column:1/-1}
.enq label{display:block;font:600 13px var(--head);margin:0 0 6px}
.enq input,.enq textarea{display:block;width:100%;border:1.5px solid #cfd2d6;border-radius:10px;padding:10px 12px;font:16px var(--sans);color:var(--ink);background:#fff}
.enq input:focus,.enq textarea:focus{outline:none;border-color:var(--teal-d);box-shadow:0 0 0 3px rgba(34,180,145,.2)}
.enq textarea{min-height:130px;resize:vertical}
.enq .enq-small{margin:0;font-size:13px;color:var(--muted)}
.enq-trap{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.mp-note{margin:0 0 16px;padding:12px 16px;border-radius:10px;font-weight:500}
.mp-note.ok{background:var(--teal-l);color:#0a5a47}
.mp-note.err{background:#fde8ea;color:#a3172a}
.mcards{display:grid;gap:12px;margin:6px 0 0}
.prose .mcard{display:grid;grid-template-columns:160px minmax(0,1fr);gap:22px;align-items:start;padding:18px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule);scroll-margin-top:20px}
.prose .mcard:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.prose .mcard-logo{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:160px;height:100px;padding:12px 14px;border-radius:10px;background:#fff;box-shadow:0 0 0 1px var(--rule);text-decoration:none}
.prose .mcard-logo img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;margin:0;border-radius:0}
.prose .mcard-logo.mono{background:var(--soft);box-shadow:none}
.prose .mcard-logo.mono span{font:800 38px/1 var(--head);color:var(--muted)}
.mp-logo{margin:0 0 16px}
.mp-logo img{display:block;width:auto;height:auto;max-width:220px;max-height:84px}
.prose .mcard h2{font:700 19px/1.25 var(--head);margin:0 0 4px}
.prose .mcard h2 a{color:var(--ink);text-decoration:none}
.prose .mcard h2 a:hover{text-decoration:underline}
.prose .mcard-where{margin:0 0 6px;font:600 12px var(--head);color:var(--teal-d);text-transform:uppercase;letter-spacing:.05em}
.prose .mcard-desc{margin:0 0 10px;color:var(--ink-2);font-size:15px;line-height:1.55}
.prose .mcard-meta{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;margin:0;font:500 14px var(--sans);color:var(--muted)}
.prose .mcard-meta a{font:700 14px var(--head);color:var(--blue-d)}
.cookie-bar{position:fixed;left:16px;right:16px;bottom:16px;z-index:200;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;max-width:980px;margin:0 auto;padding:16px 20px;border-radius:14px;background:#fff;box-shadow:0 0 0 1px var(--rule),0 20px 40px -12px rgba(0,0,0,.35);font-size:15px}
.cookie-bar p{margin:0;flex:1 1 380px}
.cookie-btns{display:flex;gap:10px}
.cookie-btns .btn{min-height:42px;padding:0 20px;font-size:14px}
@media (max-width:600px){.enq{grid-template-columns:minmax(0,1fr)}.mp-enq{padding:20px}.prose .mcard{grid-template-columns:96px minmax(0,1fr);gap:14px;padding:14px}.prose .mcard-logo{width:96px;height:64px;padding:6px 8px}.prose .mcard-logo.mono span{font-size:28px}.mp-logo img{max-width:180px;max-height:80px}}
.mp-desc{margin-top:28px;font-size:17px;line-height:1.7;color:var(--ink-2);max-width:72ch}
.mp-back{margin-top:28px;font:600 14px var(--head)}
.mp-img img{display:block;width:100%;height:auto;border-radius:var(--r);box-shadow:0 0 0 1px var(--rule)}
.mp-img .cap{margin:10px 2px 0;font-size:13px;color:var(--muted)}
.mp-img-m{display:none}
.sample-note{background:var(--amber-l);border-radius:10px;padding:10px 16px;margin:0 0 28px;font-size:14px}

/* ---------- awards ---------- */
.cra-hero{position:relative;background:#140c12 60% 45%/cover no-repeat;color:#fff}
.cra-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,8,13,.96) 0,rgba(15,8,13,0) 22%),linear-gradient(90deg,rgba(15,8,13,.92) 0,rgba(15,8,13,.78) 45%,rgba(15,8,13,.25) 100%)}
.cra-hero .wrap{position:relative;padding-top:64px;padding-bottom:72px}
.cra-hero .logo-w{display:block;width:300px;height:auto;margin-bottom:34px}
.cra-hero .eyebrow{color:#ff8cc0}
.cra-hero h1{font:800 clamp(34px,4.6vw,58px)/1.04 var(--head);letter-spacing:-.025em;max-width:16ch;margin:0 0 18px}
.cra-hero .when{font:600 18px var(--head);margin:0 0 28px}
.cra-hero .when span{display:block;font:400 16px var(--sans);color:#d6d0d4;margin-top:4px}
.facts{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--rule)}
.facts div{padding:26px var(--gut);border-left:1px solid var(--rule)}
.facts div:first-child{border-left:0;padding-left:0}
.facts b{display:block;font:800 34px/1 var(--head);letter-spacing:-.02em;color:var(--magenta-d)}
.facts span{display:block;margin-top:6px;color:var(--ink-2);font-size:15px}
.sec{padding-top:72px}
.sec-h{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px 24px;margin-bottom:24px}
.sec-h h2{font:800 34px/1.08 var(--head);letter-spacing:-.02em;margin:0}
.sec-h p{margin:8px 0 0;color:var(--ink-2);max-width:62ch}
.sec-h a{font:600 15px var(--head);color:var(--ink);text-underline-offset:3px;white-space:nowrap}
.two{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:start}
.two .prose{max-width:none}
.card{border-radius:16px;padding:26px;background:var(--soft)}
.card h3{font:700 20px/1.2 var(--head);margin:0 0 10px}
.card p{margin:0 0 12px;color:var(--ink-2)}
.card dl{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:0 0 18px}
.card dt{font:600 13px/1.9 var(--head);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.card dd{margin:0;font-weight:500}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.lcard{display:flex;flex-direction:column;border-radius:16px;padding:24px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule);text-decoration:none;color:var(--ink);min-height:200px}
.lcard:hover{box-shadow:inset 0 0 0 2px var(--ink);color:var(--ink)}
.lcard .tag{font:700 12px var(--head);letter-spacing:.06em;text-transform:uppercase;color:var(--magenta-d)}
.lcard h3{font:700 21px/1.2 var(--head);margin:10px 0 8px}
.lcard p{margin:0;color:var(--ink-2)}
.lcard .go{margin-top:auto;padding-top:16px;font:600 14px var(--head);color:var(--blue-d)}
.years{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.year{display:block;border-radius:14px;padding:20px;background:var(--soft);text-decoration:none;color:var(--ink);border-top:5px solid var(--c,var(--magenta))}
.year:hover{background:#ebecee;color:var(--ink)}
.year b{display:block;font:800 32px/1 var(--head);letter-spacing:-.02em}
.year span{display:block;margin-top:8px;font:600 15px var(--head)}
.year small{display:block;margin-top:4px;color:var(--ink-2);font-size:14px}
.stands{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.partner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;border-radius:18px;padding:32px 36px;background:#1c1c1e;color:#fff}
.partner h2{font:800 28px/1.1 var(--head);margin:0 0 8px}
.partner p{margin:0;color:#d4d4da;max-width:62ch}
.partner a:not(.btn){color:#fff}
.quick{display:flex;flex-wrap:wrap;gap:10px}
.quick a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:var(--soft);color:var(--ink);text-decoration:none;font:600 14px var(--head)}
.quick a:hover{background:var(--ink);color:#fff}

/* ---------- landing pages (membership, what's new) ---------- */
.page-h1{font:800 clamp(32px,4vw,48px)/1.08 var(--head);letter-spacing:-.02em;margin:0}
.panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:900px}
.panels.two-up{grid-template-columns:repeat(2,minmax(0,220px))}
.panel-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--ink);border-radius:14px;padding:12px;background:var(--soft)}
.panel-card img{display:block;width:100%;height:auto;border-radius:8px}
.panel-card span{font:700 17px var(--head);padding:0 4px 4px}
.panel-card:hover{background:var(--ink);color:#fff}
.links-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.links-grid a{display:block;padding:18px 20px;border-radius:12px;background:var(--soft);color:var(--ink);text-decoration:none;font:700 17px var(--head)}
.links-grid a:hover{background:var(--ink);color:#fff}
#shoptalk{font-family:var(--sans)!important;max-width:none!important;padding-top:32px}
@media (max-width:600px){.panels,.panels.two-up{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}

.search-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1000px}
.scard{position:relative;display:flex;flex-direction:column;gap:10px;align-items:flex-start;border-radius:16px;padding:28px;background:var(--soft)}
.scard .step{position:absolute;right:22px;top:20px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font:700 15px var(--head)}
.scard h2{font:800 24px/1.15 var(--head);margin:0}
.scard p{margin:0 0 6px;color:var(--ink-2)}
.scard input[type=text],.scard select{width:100%;height:48px;border:1.5px solid #cfd2d6;border-radius:10px;padding:0 12px;font:16px var(--sans);background:#fff;color:var(--ink)}
.scard .pick{width:100%}
.scard .pick span{display:block;font:600 14px var(--head);margin:6px 0 6px;color:var(--ink)}
.scard .pick br{display:none}
.scard .btn{margin-top:8px}
.prose textarea{width:100%}
@media (max-width:900px){.search-cards{grid-template-columns:minmax(0,1fr)}}

/* ---------- inspiration stories ---------- */
.story .eyebrow{text-transform:uppercase;letter-spacing:.06em;font-size:13px;color:var(--red-d);margin-bottom:10px}
.prose.story h1{margin-bottom:6px}
.story-place{font:600 15px var(--head);color:var(--muted);margin:0 0 20px!important}
.story-place a{color:var(--teal-d)}
.prose .standfirst{font:500 20px/1.5 var(--head);color:var(--ink);margin:0 0 26px}
.story-hero{margin:0 0 26px}
.prose .story-hero img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:14px;margin:0}
.story figcaption{font-size:13px;line-height:1.45;color:var(--muted);margin-top:8px}
.story-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 30px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.story-facts>div{padding:14px 16px;border-left:1px solid var(--rule)}
.story-facts>div:first-child{border-left:0;padding-left:0}
.story-facts dt{font:600 12px var(--head);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:4px}
.story-facts dd{margin:0;font:600 16px/1.3 var(--head);color:var(--ink)}
.story-side{float:right;width:min(42%,320px);margin:6px 0 16px 28px}
.prose .story-side img{display:block;width:100%;border-radius:12px;margin:0}
.story-quote{margin:30px 0;padding:6px 0 6px 24px;border-left:5px solid var(--red)}
.story-quote p{font:600 20px/1.45 var(--head);color:var(--ink);margin:0 0 10px}
.story-quote cite{font:500 14px var(--sans);font-style:normal;color:var(--muted)}
.story-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:28px 0;clear:both}
.story-gallery figure{margin:0}
.prose .story-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;margin:0}
.story-gallery.shortlist{grid-template-columns:repeat(4,minmax(0,1fr))}
.prose .story-gallery.shortlist img{aspect-ratio:3/4}
.story-gallery.shortlist figure:first-child{grid-column:1/-1}
.prose .story-gallery.shortlist figure:first-child img{aspect-ratio:16/9}
.story-gallery figcaption b{display:block;font:700 15px var(--head);color:var(--ink)}
.story-gallery figcaption small{display:block;margin-top:4px;font:600 11px/1.4 var(--head);text-transform:uppercase;letter-spacing:.04em;color:var(--magenta-d)}
.story-list{columns:2;list-style:none;padding:0!important}
.story-list li{padding:6px 0;border-bottom:1px solid var(--rule);break-inside:avoid}
.story-src{clear:both;font-size:14px;color:var(--muted);border-top:1px solid var(--rule);padding-top:16px;margin-top:28px}
.more-stories,.new-stories{clear:both;margin-top:40px}
.more-stories h2,.new-stories h2{font:800 24px var(--head);margin:0 0 14px}
.new-stories{margin:6px 0 34px}
.scards2{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px}
.more-stories .scards2{grid-template-columns:repeat(4,minmax(0,1fr))}
.new-stories .scards2{grid-template-columns:repeat(3,minmax(0,1fr))}
.scard2{display:flex;flex-direction:column;border-radius:12px;overflow:hidden;background:var(--soft);text-decoration:none;color:var(--ink)}
.scard2:hover{box-shadow:0 0 0 2px var(--ink);color:var(--ink)}
.prose .scard2 img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;margin:0;border-radius:0}
.scard2 span{padding:12px 14px 14px;font-size:14px;line-height:1.4;color:var(--ink-2)}
.scard2 b{display:block;font:700 16px/1.25 var(--head);color:var(--ink);margin-bottom:3px}
@media (max-width:600px){
  .story-facts{grid-template-columns:1fr 1fr}
  .story-facts>div:nth-child(3){border-left:0;padding-left:0}
  .story-side{float:none;width:auto;margin:0 0 18px}
  .story-gallery{grid-template-columns:1fr 1fr}
  .story-gallery.shortlist{grid-template-columns:1fr 1fr}
  .story-list{columns:1}
  .more-stories .scards2,.new-stories .scards2{grid-template-columns:1fr 1fr}
  .prose .standfirst{font-size:18px}
  .story-quote p{font-size:18px}
}

/* store design landing page */
.sd-head{padding:36px 0 8px}
.sd-head p{margin:10px 0 0;font-size:18px;color:var(--ink-2);max-width:60ch}
.sd-issue{padding-top:40px}
.sd-issue .sec-h h2{font-size:26px}
.sd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sd-card{display:flex;flex-direction:column;border-radius:14px;overflow:hidden;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule);text-decoration:none;color:var(--ink)}
.sd-card:hover{box-shadow:0 0 0 2px var(--ink);color:var(--ink)}
.sd-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.sd-card span{padding:14px 16px 18px;color:var(--ink-2);font-size:15px;line-height:1.45}
.sd-card b{display:block;font:700 18px/1.25 var(--head);color:var(--ink);margin-bottom:4px}
.sd-more{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;margin-top:56px;padding:28px 32px;border-radius:18px;background:var(--soft)}
.sd-more h2{font:800 24px var(--head);margin:0 0 6px}
.sd-more p{margin:0;color:var(--ink-2)}
@media (max-width:900px){.sd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.sd-more{grid-template-columns:minmax(0,1fr)}}
@media (max-width:540px){.sd-grid{grid-template-columns:minmax(0,1fr)}}
.story-hero.narrow{max-width:460px}
.prose .story-hero.narrow img{aspect-ratio:auto}

/* ---------- News pages (SDEA news, Members' news) ---------- */
.prose.news h1{margin-bottom:6px}
.news-intro{color:var(--ink-2);margin:0 0 18px!important}
.news-tabs{display:flex;gap:8px;margin:0 0 26px;flex-wrap:wrap}
.news-tabs a{padding:9px 18px;border-radius:999px;background:var(--soft);font:600 14px var(--head);color:var(--ink);text-decoration:none}
.news-tabs a:hover{background:var(--rule)}
.news-tabs a[aria-current]{background:var(--ink);color:#fff}
.ncards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 0 10px}
.ncard{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule);text-decoration:none;color:var(--ink)}
.ncard:hover{box-shadow:inset 0 0 0 2px var(--ink);color:var(--ink)}
.ncard:first-child{grid-column:1/-1;flex-direction:row}
.ncard-img{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--soft)}
.ncard:first-child .ncard-img{flex:0 0 52%;aspect-ratio:auto;min-height:280px}
.prose .ncard-img img{display:block;width:100%;height:100%;object-fit:cover;margin:0;border-radius:0;transition:transform .4s}
.ncard:hover .ncard-img img{transform:scale(1.03)}
.prose .ncard-img.fit img{object-fit:contain;padding:22px;background:var(--soft)}
.ncard-txt{display:flex;flex-direction:column;gap:6px;padding:16px 18px 20px}
.ncard:first-child .ncard-txt{justify-content:center;padding:26px 28px}
.ncard-txt small{font:600 12px var(--head);text-transform:uppercase;letter-spacing:.05em;color:var(--teal-d)}
.ncard-txt b{font:700 18px/1.3 var(--head);color:var(--ink)}
.ncard:first-child .ncard-txt b{font-size:24px;letter-spacing:-.01em}
.ncard-txt span{font-size:15px;line-height:1.55;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nlist-h{font:800 22px var(--head);margin:38px 0 6px;padding-top:18px;border-top:2px solid var(--ink)}
.nlist{list-style:none;margin:0!important;padding:0!important}
.nlist li{margin:0;padding:0;border-bottom:1px solid var(--rule)}
.nlist a{display:grid;grid-template-columns:136px minmax(0,1fr);gap:18px;align-items:start;padding:14px 0;text-decoration:none;color:var(--ink)}
.nlist a:hover b{text-decoration:underline}
.nl-img{display:block;width:136px;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:var(--soft)}
.prose .nl-img img{display:block;width:100%;height:100%;object-fit:cover;margin:0;border-radius:0}
.prose .nl-img.fit img{object-fit:contain;padding:6px}
.nl-txt{display:flex;flex-direction:column;gap:3px}
.nl-txt b{font:700 16px/1.35 var(--head);color:var(--ink)}
.nl-txt small{font:600 12px var(--head);color:var(--muted)}
.nl-txt span{font-size:14px;line-height:1.5;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-more{margin-top:28px!important;font-size:14px;color:var(--muted)}
@media (max-width:700px){
  .ncards{grid-template-columns:minmax(0,1fr)}
  .ncard:first-child{flex-direction:column}
  .ncard:first-child .ncard-img{flex:none;aspect-ratio:3/2;min-height:0}
  .ncard:first-child .ncard-txt{padding:16px 18px 20px}
  .ncard:first-child .ncard-txt b{font-size:20px}
  .nlist a{grid-template-columns:96px minmax(0,1fr);gap:14px}
  .nl-img{width:96px}
}
/* Shoptalk articles */
.scard2.fit img{object-fit:contain!important;padding:16px;background:#fff}
.more-stories>p{margin-top:16px!important}
.prose.story h2 a{color:inherit;text-decoration:none}
.prose.story h2 a:hover{text-decoration:underline}
.story-gallery.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.story-gallery.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.prose .story-gallery.two img{aspect-ratio:auto;height:100%}
.story-gallery.also{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 16px}
.story-gallery.also figcaption{font-size:13px}
.story-gallery.also figcaption b{font-size:17px;margin-bottom:2px}
.story-gallery.also figcaption small{font-size:11px;line-height:1.5;text-transform:none;letter-spacing:0;font-weight:600}
.story-cap{font-size:13px;color:var(--muted);margin-top:-16px!important}
.story-note{font-size:14px;color:var(--muted)}
.story-logo{margin:4px 0 22px!important}
.prose .story-logo img{display:block;max-width:220px;max-height:90px;width:auto;height:auto;margin:0;border-radius:0}
.story-contact{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;margin:26px 0 0!important;padding:16px 20px;border-radius:12px;background:var(--soft)}
.story-contact span{font:700 12px var(--head);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.story-contact a{font-weight:600;margin-right:14px}
.prose blockquote.story-quote{margin:30px 0}
.ticks{list-style:none;padding:0!important;margin:0 0 24px!important}
.ticks li{position:relative;padding:7px 0 7px 30px;border-bottom:1px solid var(--rule)}
.ticks li::before{content:"";position:absolute;left:4px;top:13px;width:12px;height:7px;border-left:2.5px solid var(--teal);border-bottom:2.5px solid var(--teal);transform:rotate(-45deg)}
.ticks.cols{columns:2;column-gap:28px}
.ticks.cols li{break-inside:avoid}
.diary{list-style:none;padding:0!important;margin:10px 0 18px!important}
.diary li{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;padding:16px 0;border-bottom:1px solid var(--rule)}
.diary time{font:800 15px var(--head);color:var(--red-d)}
.diary b{display:block;font:700 17px var(--head)}
.sl-key{font-size:14px;color:var(--muted)}
.mem-key{display:inline-block;padding:0 8px;border-radius:6px;background:var(--teal-l);color:var(--teal-d);font-weight:700}
.sl-grid{columns:2;column-gap:26px;margin:16px 0 8px}
.sl-cat{break-inside:avoid;margin:0 0 22px}
.sl-cat h3{font:800 14px var(--head);text-transform:uppercase;letter-spacing:.06em;color:var(--magenta-d);margin:0 0 6px;padding-bottom:6px;border-bottom:2px solid var(--magenta)}
.sl-cat ul{list-style:none;margin:0!important;padding:0!important}
.sl-cat li{padding:6px 0;border-bottom:1px solid var(--rule);font-size:14px;line-height:1.4}
.sl-cat li span{display:block;font-weight:600;color:var(--ink)}
.sl-cat li em{font-style:normal;color:var(--muted);font-size:13px}
.sl-cat li.mem{background:linear-gradient(90deg,var(--teal-l),transparent);padding-left:8px;border-radius:4px}
.sl-cat li.mem em,.sl-cat li.mem em a{color:var(--teal-d);font-weight:700}
.judges{list-style:none;padding:0!important;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:6px 0 26px!important}
.judges li{padding:14px 16px;border-radius:12px;background:var(--soft);font-size:13px;line-height:1.4;color:var(--ink-2)}
.judges b{display:block;font:700 15px var(--head);color:var(--ink);margin-bottom:3px}
.spotlight{padding-left:22px!important}
.spotlight li{padding:5px 0}
@media (max-width:700px){
  .story-gallery.four{grid-template-columns:1fr 1fr}
  .story-gallery.also{grid-template-columns:1fr 1fr}
  .sl-grid{columns:1}
  .judges{grid-template-columns:1fr 1fr}
  .diary li{grid-template-columns:minmax(0,1fr);gap:4px}
  .ticks.cols{columns:1}
}

/* ---------- member tools: badges, logo wall, Join page, briefs, supplier pages, profile updates, admin ---------- */
.badges{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 10px!important}
.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 11px 4px 9px;border-radius:999px;font:500 12px/1.3 var(--sans);text-decoration:none;color:#5a1033;background:#fde7f1;box-shadow:inset 0 0 0 1px #f6c3da}
.badge b{font:700 12px var(--head)}
.badge::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--magenta)}
.badge:hover{background:#fbd3e6;color:#5a1033}
.badge.b-win{color:#5b3b00;background:#fff1cc;box-shadow:inset 0 0 0 1px #f7d574}
.badge.b-win::before{background:var(--amber)}
.badge.b-stand{color:#05463a;background:var(--teal-l);box-shadow:inset 0 0 0 1px #b6e6d8}
.badge.b-stand::before{background:var(--teal)}
.mp-main>.badges{margin:-6px 0 18px!important}
.members-wall{padding-top:64px}
.logo-marquee{display:grid;gap:12px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.lm-track{display:flex;gap:12px;width:max-content;animation:lm-scroll 90s linear infinite}
.lm-row.rev .lm-track{animation-direction:reverse;animation-duration:110s}
.logo-marquee:hover .lm-track,.logo-marquee:focus-within .lm-track{animation-play-state:paused}
@keyframes lm-scroll{to{transform:translateX(-50%)}}
.lm-track a,.logo-grid a{display:flex;align-items:center;justify-content:center;flex:none;width:168px;height:92px;padding:12px 16px;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 1px var(--rule)}
.lm-track a:hover,.logo-grid a:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.lm-track img,.logo-grid img{display:block;max-width:100%;max-height:100%;width:auto;height:auto}
.logo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.logo-grid a{width:auto}
@media (prefers-reduced-motion:reduce){.lm-track{animation:none;flex-wrap:wrap;width:auto}.lm-track a[aria-hidden]{display:none}.logo-marquee{-webkit-mask-image:none;mask-image:none}}
.hero-brief{margin:16px 0 0;font-size:15px;color:var(--ink-2)}
.hero-brief a{font-weight:600;color:var(--ink)}
.search-more{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px;max-width:1000px}
.search-more a{display:block;padding:18px 20px;border-radius:14px;background:var(--soft);text-decoration:none;color:var(--ink-2)}
.search-more a:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.search-more b{display:block;font:700 17px var(--head);color:var(--ink);margin-bottom:4px}
.search-more span{font-size:14px;line-height:1.45}
/* Join page */
.join-hero{background:linear-gradient(180deg,var(--soft),#fff);padding:46px 0 10px}
.join-hero-in{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:center}
.join-hero h1{font:800 clamp(34px,4.4vw,56px)/1.04 var(--head);letter-spacing:-.025em;margin:0 0 18px}
.join-hero .eyebrow{text-transform:uppercase;letter-spacing:.08em;font:700 13px var(--head);color:var(--blue-d);margin:0 0 10px}
.join-hero .lede{font-size:18px;line-height:1.6;color:var(--ink-2);margin:0 0 24px;max-width:58ch}
.join-call{margin:14px 0 0;color:var(--muted);font-size:15px}
.join-stats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.join-stats li{padding:18px 18px 20px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px var(--rule);font-size:14px;line-height:1.4;color:var(--ink-2)}
.join-stats b{display:block;font:800 34px/1 var(--head);letter-spacing:-.02em;color:var(--ink);margin-bottom:6px}
.join-stats li:nth-child(2) b{color:var(--magenta-d)}
.join-ben{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 22px}
.join-ben div{border-top:5px solid var(--c);padding-top:14px}
.join-ben h3{font:700 18px var(--head);margin:0 0 6px}
.join-ben p{margin:0;color:var(--ink-2);font-size:15px;line-height:1.55}
.join-quotes{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px}
.jq{margin:0;padding:24px 26px;border-radius:16px;background:var(--soft);display:flex;flex-direction:column;justify-content:space-between;gap:16px}
.jq blockquote{margin:0;font:500 16px/1.55 var(--head);color:var(--ink)}
.jq.big{background:var(--ink);color:#fff}
.jq.big blockquote{font:700 23px/1.4 var(--head);color:#fff}
.jq figcaption{font-size:14px;color:var(--muted)}
.jq.big figcaption{color:#c9c9cf}
.jq figcaption b{display:block;font:700 15px var(--head);color:inherit}
.jq:not(.big) figcaption b{color:var(--ink)}
.join-opts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.jo{position:relative;display:flex;flex-direction:column;gap:10px;padding:24px 22px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule)}
.jo.new{box-shadow:inset 0 0 0 2px var(--teal)}
.jo-tag{position:absolute;top:-12px;left:20px;margin:0;padding:3px 10px;border-radius:999px;background:var(--teal);color:#05291f;font:700 12px var(--head)}
.jo h3{font:800 22px var(--head);margin:0}
.jo-for{margin:0;color:var(--ink-2);font-size:15px;line-height:1.5}
.jo-fee{margin:0;font:800 24px var(--head);color:var(--ink)}
.jo-fee a{font-size:inherit}
.jo .ticks{margin:0 0 6px!important;font-size:14px}
.jo .btn{margin-top:auto;align-self:flex-start}
.jo-table{width:100%;border-collapse:collapse;font-size:14px}
.jo-table td{padding:7px 0;border-bottom:1px solid var(--rule);vertical-align:top}
.jo-table td+td{text-align:right;font-weight:700;padding-left:10px}
.jo-small{margin:0;font-size:13px;color:var(--muted)}
.join-faq details{border-bottom:1px solid var(--rule);padding:4px 0;max-width:820px}
.join-faq summary{cursor:pointer;padding:12px 0;font:700 17px var(--head);list-style-position:outside}
.join-faq details p{margin:0 0 16px;color:var(--ink-2)}
.join-cta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin:64px 0 72px;padding:34px 38px;border-radius:20px;background:var(--ink);color:#fff}
.join-cta h2{font:800 28px var(--head);margin:0 0 6px;color:#fff}
.join-cta p{margin:0;color:#d4d4da}
.join-cta .btn.line{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px #fff}
.join-cta .btn.line:hover{background:#fff;color:var(--ink)}
@media (max-width:1000px){.join-hero-in,.join-quotes{grid-template-columns:minmax(0,1fr)}.join-ben,.join-opts{grid-template-columns:repeat(2,minmax(0,1fr))}.search-more{grid-template-columns:minmax(0,1fr)}}
@media (max-width:600px){.join-ben,.join-opts{grid-template-columns:minmax(0,1fr)}.join-stats b{font-size:28px}.join-cta{padding:26px 22px}.jo{padding:22px 18px}}
/* forms: brief, Studio application, profile update */
.prose.form-page{max-width:860px}
.enq select{display:block;width:100%;border:1.5px solid #cfd2d6;border-radius:10px;padding:10px 12px;font:16px var(--sans);color:var(--ink);background:#fff}
.enq .check label{display:flex;gap:10px;align-items:flex-start;font:500 15px/1.45 var(--sans)}
.enq .check input{width:auto;margin-top:3px;flex:none}
.brief-sum{margin:0 0 22px;padding:16px 20px;border-radius:14px;background:var(--soft)}
.brief-sum p{margin:0 0 6px!important}
.brief-sum p:last-child{margin:0!important}
.brief-pick{list-style:none;margin:0 0 22px!important;padding:0!important;display:grid;gap:8px}
.brief-pick li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-radius:12px;box-shadow:inset 0 0 0 1.5px var(--rule)}
.brief-pick label{display:flex;align-items:center;gap:14px;cursor:pointer;flex:1;min-width:0}
.brief-pick input{width:20px;height:20px;flex:none}
.bp-logo{flex:none;display:flex;align-items:center;justify-content:center;width:96px;height:48px}
.prose .bp-logo img{max-width:100%;max-height:100%;width:auto;height:auto;margin:0;border-radius:0}
.brief-pick b{display:block;font:700 16px var(--head)}
.brief-pick small{display:block;color:var(--muted);font-size:13px}
.upd fieldset{margin:0 0 22px;padding:20px 22px;border:0;border-radius:16px;background:var(--soft)}
.upd legend{float:left;width:100%;padding:0;margin:0 0 12px;font:800 20px var(--head)}
.upd label{display:block;font:600 13px var(--head);margin:0 0 6px}
.upd input[type=text],.upd input[type=url],.upd textarea{display:block;width:100%;border:1.5px solid #cfd2d6;border-radius:10px;padding:10px 12px;font:16px var(--sans);background:#fff}
.upd input[type=file]{display:block;width:100%;margin:0 0 8px;font-size:14px}
.upd-row{display:flex;gap:20px;align-items:center;clear:both}
.upd-now{flex:none;display:flex;align-items:center;justify-content:center;width:180px;height:96px;padding:10px;border-radius:12px;background:#fff;color:var(--muted);font-size:13px}
.prose .upd-now img{max-width:100%;max-height:100%;width:auto;height:auto;margin:0;border-radius:0}
.upd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;clear:both}
.upd-grid.two{grid-template-columns:1fr 1fr}
.upd-grid .full{grid-column:1/-1}
.upd-photos{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;clear:both}
.prose .upd-photos img{width:110px;height:82px;object-fit:cover;border-radius:8px;margin:0}
.upd>div>label{display:block;font:600 13px var(--head);margin:0 0 6px}
.upd>div>textarea{display:block;width:100%;border:1.5px solid #cfd2d6;border-radius:10px;padding:10px 12px;font:16px var(--sans)}
@media (max-width:700px){.upd-grid,.upd-grid.two{grid-template-columns:minmax(0,1fr)}.upd-row{flex-direction:column;align-items:flex-start}}
/* profile: project photos and the members' prompt */
.mp-photos{margin-top:36px;padding-top:24px;border-top:1px solid var(--rule)}
.mp-photos h2{font:800 24px/1.15 var(--head);margin:0 0 14px}
.mp-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mp-photo-grid figure{margin:0}
.mp-photo-grid a{display:block;border-radius:10px;overflow:hidden;cursor:zoom-in}
.mp-photo-grid img{display:block;width:100%;aspect-ratio:4/3;height:auto;object-fit:cover}
.mp-photo-grid figcaption{margin-top:6px;font-size:13px;color:var(--muted);line-height:1.4}
.mp-own{margin-top:26px;font-size:14px;color:var(--muted)}
@media (max-width:600px){.mp-photo-grid{grid-template-columns:1fr 1fr}}
/* supplier pages */
.cat-count{font:600 15px var(--head);color:var(--teal-d);margin:0 0 14px!important}
.cat-brief{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:30px 0 18px;padding:24px 26px;border-radius:16px;background:var(--ink);color:#fff}
.cat-brief h2{font:800 22px var(--head);margin:0 0 4px;color:#fff}
.cat-brief p{margin:0!important;color:#d4d4da}
.cat-note{font-size:14px;color:var(--muted)}
.side-links{list-style:none;margin:0 0 14px;padding:0}
.side-links li{padding:6px 0;border-bottom:1px solid var(--rule)}
.side-links a{font:600 15px var(--head);color:var(--ink);text-decoration:none}
.side-links a:hover{text-decoration:underline}
.page-body.wide .prose{max-width:none}
.hub-tools{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 10px}
.hub-fam{margin-top:34px}
.hub-fam h2{font:800 24px var(--head);margin:0 0 12px;padding-bottom:8px;border-bottom:2px solid var(--ink)}
.hub-list{list-style:none;margin:0!important;padding:0!important;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.hub-list a{display:block;height:100%;padding:16px 18px;border-radius:14px;background:var(--soft);text-decoration:none;color:var(--ink-2)}
.hub-list a:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.hub-list b{display:block;font:700 17px/1.25 var(--head);color:var(--ink);margin-bottom:4px}
.hub-list span{font-size:14px;line-height:1.45}
@media (max-width:900px){.hub-list{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.hub-list{grid-template-columns:minmax(0,1fr)}}
/* members' news: newest approved stories, loaded on the page */
.news-live{margin:0 0 26px}
.news-live h2{font:800 20px var(--head);margin:0 0 6px}
/* admin */
.prose.admin{max-width:1100px}
/* SDEA admin pages: logo and "SDEA admin" only at the top (both lead to the admin home) */
.adm-head{border-bottom:1px solid var(--rule)}
.adm-head .head-row{min-height:76px;gap:18px}
.adm-head .logo{margin-right:0}
.adm-head-title{margin-right:auto;font:800 20px var(--head);color:var(--ink);text-decoration:none}
.adm-head-title:hover{color:var(--blue-d)}
.adm-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px!important}
.adm-nav a{padding:7px 14px;border-radius:999px;background:var(--soft);font:600 14px var(--head);color:var(--ink);text-decoration:none}
.adm-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 20px}
.adm-cards a{display:block;padding:18px;border-radius:14px;background:var(--soft);color:var(--ink-2);text-decoration:none;font-size:14px}
.adm-cards b{display:block;font:800 32px var(--head);color:var(--ink)}
.adm-table{width:100%;border-collapse:collapse;font-size:14px;margin:10px 0 20px}
.adm-table th,.adm-table td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--rule)}
.adm-table th{font:700 13px var(--head);background:var(--soft)}
.adm-month,.adm-send{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:0 0 16px}
.adm-month select{padding:8px 10px;border-radius:8px;border:1.5px solid #cfd2d6;font:15px var(--sans)}
.adm-sub{margin:0 0 22px;padding:20px 22px;border-radius:16px;box-shadow:inset 0 0 0 1.5px var(--rule)}
.adm-sub h2{font:800 20px var(--head);margin:0 0 12px}
.adm-sub h2 small{font:500 13px var(--sans);color:var(--muted)}
.adm-item{display:block;margin:0 0 12px;padding:12px 14px;border-radius:12px;background:var(--soft)}
.adm-item input[type=text],.adm-item textarea{display:block;width:100%;margin:8px 0;border:1.5px solid #cfd2d6;border-radius:8px;padding:8px 10px;font:15px var(--sans);background:#fff}
.adm-logo img{max-width:200px;max-height:90px;vertical-align:middle;margin:0 0 0 10px!important;background:#fff;padding:6px;border-radius:6px}
.adm-photo img{max-width:220px;max-height:160px;vertical-align:middle;margin:6px 10px 0 10px!important;border-radius:6px}
.adm-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:8px 0 0!important}
.adm-note{font-size:14px;color:var(--ink-2)}
.adm-list li{padding:6px 0}
.adm-list small{color:var(--muted)}
form.inline{display:inline}
.linkbtn{border:0;background:none;color:var(--red-d);text-decoration:underline;cursor:pointer;font:14px var(--sans);padding:0 0 0 8px}
.adm-login{display:grid;gap:10px;max-width:360px}
.adm-login input{padding:10px 12px;border-radius:10px;border:1.5px solid #cfd2d6;font:16px var(--sans)}
.adm-small{font-size:13px;color:var(--muted)}
@media (max-width:800px){.adm-cards{grid-template-columns:1fr 1fr}}

/* ---------- Window Walk (picture-led feature) ---------- */
.wwf{--ww-red:#a3122a;--ww-deep:#4f0814;--ww-gold:#f8c35a}
.ww-hero{background:radial-gradient(120% 140% at 0 0,#cf1a35 0,var(--ww-red) 42%,var(--ww-deep) 100%);color:#fff;padding:44px 0 52px;overflow:hidden}
.ww-hero-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;align-items:center}
.ww-logo{display:block;width:96px;height:auto;margin:0 0 20px;background:#fff;border-radius:18px;padding:8px}
.ww-hero .eyebrow{color:var(--ww-gold);text-transform:uppercase;letter-spacing:.08em;font:700 13px var(--head);margin:0 0 10px}
.ww-hero h1{font:800 clamp(46px,6vw,84px)/.95 var(--head);letter-spacing:-.03em;margin:0 0 20px;color:#fff}
.ww-hero h1 span{display:block;font-weight:600;font-size:.4em;letter-spacing:-.01em;margin-top:12px;color:#ffd6dc}
.ww-stand{font:500 18px/1.55 var(--head);color:#fff;opacity:.93;margin:0 0 24px;max-width:46ch}
.ww-facts{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.ww-facts span{padding:8px 15px;border-radius:999px;background:rgba(255,255,255,.13);font:500 14px var(--head)}
.ww-facts b{font-weight:800;color:var(--ww-gold);margin-right:5px}
.ww-hero-pics{display:grid;grid-template-columns:1.15fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:10px;height:540px}
.ww-hero-pics a{position:relative;display:block;overflow:hidden;border-radius:16px;box-shadow:0 18px 40px rgba(0,0,0,.35)}
.ww-hero-pics a:nth-child(1),.ww-hero-pics a:nth-child(2){grid-row:1/3}
.ww-hero-pics img{position:absolute;top:0;left:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.ww-hero-pics a:hover img{transform:scale(1.04)}
.ww-route{display:flex;flex-wrap:wrap;gap:12px 22px;align-items:baseline;margin:32px 0 0;padding:18px 24px;border-radius:16px;background:var(--soft)}
.ww-route>p{margin:0;font:800 13px var(--head);text-transform:uppercase;letter-spacing:.08em;color:var(--red-d)}
.ww-route ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 30px}
.ww-route li{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}
.ww-route li b{font:700 14px var(--head);color:var(--ink)}
.ww-route a{font:500 14px var(--sans);color:var(--ink-2);text-decoration:none;border-bottom:1px solid #cfcfd4}
.ww-route a:hover{color:var(--red-d);border-color:currentColor}
.ww-street{display:flex;align-items:center;gap:20px;margin:72px 0 0;font:800 clamp(30px,3.6vw,48px)/1 var(--head);letter-spacing:-.025em;color:var(--red-d)}
.ww-street::after{content:"";flex:1;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--red),rgba(239,50,70,0))}
.ww-store{margin:40px 0 0;scroll-margin-top:24px}
.ww-head{max-width:660px;margin:0 0 18px}
.ww-num{display:inline-block;font:800 13px/1 var(--head);color:#fff;background:var(--red);border-radius:999px;padding:6px 11px;margin:0 0 12px}
.ww-head h3{font:800 clamp(28px,2.8vw,38px)/1.05 var(--head);letter-spacing:-.02em;margin:0 0 6px}
.ww-where{font:700 12px var(--head)!important;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)!important;margin:0 0 10px!important}
.ww-head p{margin:0;color:var(--ink-2);font-size:16px;line-height:1.6}
.ww-side{display:flex;gap:36px;align-items:flex-end}
.ww-side .ww-head{flex:1 1 260px;margin:0 0 6px}
.ww-side .ww-row{flex:0 1 var(--w)}
.ww-row{display:flex;gap:10px;width:var(--w);max-width:100%}
.ww-row+.ww-row,.ww-side+.ww-row{margin-top:10px}
/* each cell keeps its picture's shape with the padding-top method, which every browser sizes the same way */
.ww-cell{position:relative;flex:var(--ar) 1 0%;min-width:0}
.ww-cell::before{content:"";display:block;padding-top:calc(100% / var(--ar))}
.ww-cell:only-child{flex-grow:1}
.ww-cell>.ww-pic{position:absolute;top:0;right:0;bottom:0;left:0}
.ww-pic{display:block;overflow:hidden;border-radius:12px;background:#eee;cursor:zoom-in}
.ww-pic img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.ww-pic:hover img{transform:scale(1.035)}
.ww-quad-in{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:10px}
.ww-quad-in .ww-pic{position:relative;min-height:0}
.ww-quad-in .ww-pic img{position:absolute;top:0;left:0}
.ww-store.ww-l-joined .ww-row{gap:0}
.ww-store.ww-l-joined .ww-cell:first-child .ww-pic{border-radius:12px 0 0 12px}
.ww-store.ww-l-joined .ww-cell:last-child .ww-pic{border-radius:0 12px 12px 0}
.ww-credit{margin:56px 0 0;padding-top:20px;border-top:1px solid var(--rule);font-size:14px;color:var(--muted)}
.wwf .more-stories{margin:40px 0 64px}
.wwf .scard2 img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
@media (max-width:900px){
  .ww-hero-in{grid-template-columns:minmax(0,1fr);gap:30px}
  .ww-hero-pics{height:420px}
  .ww-side{display:block}
  .ww-side .ww-head{margin:0 0 16px}
}
@media (max-width:600px){
  .ww-hero{padding:32px 0 36px}
  .ww-hero-pics{height:320px;gap:8px}
  .ww-row{width:auto!important;flex-wrap:wrap;gap:8px}
  .ww-row .ww-cell{flex:var(--ar) 1 calc(var(--ar) * 100px)}
  .ww-row .ww-cell:only-child{flex-grow:1}
  .ww-quad-in{gap:6px}
  .ww-quad-in .ww-pic{border-radius:8px}
  .ww-store.ww-l-joined .ww-row{flex-wrap:nowrap}
  .ww-store.ww-l-joined .ww-cell{flex:var(--ar) 1 0%}
  .ww-street{margin-top:52px}
}
/* picture viewer (pages with data-gallery) */
.lb-box{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:64px 84px;background:rgba(14,10,12,.95)}
.lb-box[hidden]{display:none}
.lb-box figure{margin:0;display:flex;flex-direction:column;align-items:center;max-width:100%;max-height:100%}
.lb-box img{display:block;max-width:100%;max-height:calc(100vh - 160px);width:auto;height:auto;object-fit:contain;border-radius:8px}
.lb-box figcaption{margin-top:14px;color:#ececf1;font:500 14px/1.45 var(--sans);text-align:center;max-width:70ch}
.lb-box figcaption b{font:700 15px var(--head);color:#fff}
.lb-box button{position:absolute;display:flex;align-items:center;justify-content:center;width:52px;height:52px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.13);color:#fff;font:400 34px/1 var(--head);cursor:pointer}
.lb-box button:hover{background:rgba(255,255,255,.26)}
.lb-x{top:16px;right:16px}
.lb-p,.lb-n{top:50%;margin-top:-26px}
.lb-p{left:18px}.lb-n{right:18px}
html.lb-on{overflow:hidden}
@media (max-width:600px){.lb-box{padding:64px 12px 88px}.lb-p,.lb-n{top:auto;bottom:18px;margin:0}}

/* ---------- LearnVM section ---------- */
:root{--lvm:#16a596;--lvm-d:#0e7a6f;--lvm-ink:#2e3a40;--lvm-l:#e6f4f1}
.btn.lvm{background:var(--lvm);color:#fff}
.btn.lvm:hover{background:var(--lvm-d);color:#fff}
.btn.lvm-w{background:#fff;color:var(--lvm-ink)}
.btn.lvm-w:hover{background:var(--lvm-l);color:var(--lvm-ink)}
.nav>li.learnvm.is-current>a{color:var(--lvm-d);box-shadow:inset 0 -3px 0 var(--lvm)}
.learnvm .sub a[aria-current]{background:var(--lvm-l)}
.lvm .eyebrow{color:var(--lvm-d);text-transform:uppercase;letter-spacing:.08em;font-size:13px}
.lvm-bar{background:#fff;border-bottom:1px solid var(--rule)}
.lvm-bar .wrap{display:flex;align-items:center;gap:28px;min-height:76px}
.lvm-logo{flex:none}
.lvm-logo img{display:block;height:40px;width:auto}
.lvm-bar ul{list-style:none;margin:0 auto 0 0;padding:0;display:flex;gap:2px}
.lvm-bar li a{display:block;padding:9px 14px;border-radius:999px;font:600 15px var(--head);color:var(--lvm-ink);text-decoration:none;white-space:nowrap}
.lvm-bar li a:hover{background:var(--lvm-l);color:var(--lvm-ink)}
.lvm-bar li a[aria-current]{background:var(--lvm);color:#fff}
.lvm-bar .btn{min-height:44px;padding:0 20px;font-size:14px;flex:none}
.lvm-promo{background:var(--lvm-ink);color:#fff;font:500 14px/1.4 var(--head)}
.lvm-promo .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 16px;padding-top:10px;padding-bottom:10px;text-align:center}
.lvm-promo p{margin:0}
.lvm-promo b{color:#8ce6d9;letter-spacing:.04em}
.lvm-promo a{color:#fff;font-weight:700;text-underline-offset:3px}
.lvm-hero{background:var(--lvm-l);position:relative;overflow:hidden}
.lvm-hero::before,.lvm-hero::after{content:"";position:absolute;border-radius:50%;background:rgba(22,165,150,.14)}
.lvm-hero::before{width:300px;height:300px;right:-90px;top:-130px}
.lvm-hero::after{width:180px;height:180px;right:150px;top:-110px;background:rgba(22,165,150,.09)}
.lvm-hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center;padding-top:56px;padding-bottom:104px}
.lvm-hero h1{font:800 clamp(34px,4.2vw,56px)/1.06 var(--head);letter-spacing:-.025em;color:var(--lvm-ink);margin:0 0 18px}
.lvm-hero .lede,.lvm-page-hero .lede{font-size:18px;color:var(--ink-2);margin:0 0 28px;max-width:52ch}
.lvm-hero-img{margin:0;border-radius:18px;overflow:hidden;box-shadow:0 30px 50px -30px rgba(20,60,55,.6)}
.lvm-hero-img img{display:block;width:100%}
.lvm-page-hero{background:var(--lvm-l)}
.lvm-page-hero .wrap{padding-top:48px;padding-bottom:48px}
.lvm-page-hero h1{font:800 clamp(32px,4vw,50px)/1.08 var(--head);letter-spacing:-.025em;color:var(--lvm-ink);margin:0 0 12px;max-width:24ch}
.lvm-page-hero .lede{margin:0;max-width:64ch}
.lvm-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:-60px;position:relative;z-index:2}
.lvm-four>div{background:#fff;border-radius:16px;padding:26px 22px;box-shadow:0 22px 40px -26px rgba(20,60,55,.45),0 0 0 1px rgba(0,0,0,.05)}
.lvm-four>div.on{background:var(--lvm);color:#fff}
.lvm-four .ic{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--lvm-l);color:var(--lvm-d);margin-bottom:16px}
.lvm-four .on .ic{background:rgba(255,255,255,.2);color:#fff}
.lvm-four .ic svg{width:26px;height:26px}
.lvm-four h2{font:700 19px/1.2 var(--head);margin:0 0 8px}
.lvm-four p{margin:0;font-size:15px;color:var(--ink-2)}
.lvm-four .on p{color:#eefbf9}
.lvm-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px;align-items:center}
.lvm-split.rev{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
.lvm-split .prose{max-width:none}
.lvm-split>div>p{color:var(--ink-2)}
.lvm-h2,.lvm .prose h2{font:800 34px/1.1 var(--head);letter-spacing:-.02em;color:var(--lvm-ink);margin:0 0 16px}
.lvm-legal.prose h2{font-size:22px;margin:1.8em 0 .6em}
.lvm-legal.prose h2:first-child{margin-top:0}
.lvm-pic{margin:0;border-radius:18px;overflow:hidden;align-self:stretch;min-height:320px}
.lvm-pic img{display:block;width:100%;height:100%;object-fit:cover}
.lvm-cta{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:center;margin-top:72px;padding:40px 44px;border-radius:20px;background:var(--lvm-ink);color:#fff}
.lvm-cta h2{font:800 clamp(23px,2.5vw,31px)/1.18 var(--head);margin:0 0 10px;letter-spacing:-.01em}
.lvm-cta p{margin:0 0 22px;color:#cfd8db}
.lvm-cta.slim{grid-template-columns:minmax(0,1fr) auto}
.lvm-cta.slim p{margin:0}
.lvm-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
.lvm-stats>div{display:flex;flex-direction:column-reverse;justify-content:flex-end;background:rgba(255,255,255,.07);border-radius:14px;padding:18px 16px}
.lvm-stats dd{margin:0;font:800 38px/1 var(--head);color:#8ce6d9;letter-spacing:-.02em}
.lvm-stats dt{font:600 12px/1.3 var(--head);text-transform:uppercase;letter-spacing:.06em;color:#cfd8db;margin-top:10px}
.ticks{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:10px}
.ticks li{position:relative;padding-left:31px;line-height:1.45}
.ticks li::before{content:"";position:absolute;left:0;top:1px;width:21px;height:21px;border-radius:50%;background:var(--lvm) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat}
.ticks li::before{top:8px;border:0;transform:none}      /* the circle tick: undo the older line tick's turn and outline */
.ticks a{color:var(--ink);text-underline-offset:3px}
.ticks.cols2{grid-template-columns:1fr 1fr;margin-top:22px}
.ticks.cols4{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 20px}
.lvm-big li{font:600 16px/1.35 var(--head);color:var(--lvm-ink);background:var(--lvm-l);border-radius:14px;padding:16px 16px 16px 50px}
.lvm-big li::before{left:16px;top:16px}
.lvm-pack-row{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px;align-items:stretch}
.lvm-pack{border-radius:20px;padding:30px;background:#fff;box-shadow:inset 0 0 0 2px var(--lvm)}
.lvm-pack .eyebrow{margin-bottom:8px}
.lvm-pack h3{font:800 26px/1.15 var(--head);margin:0 0 6px;color:var(--lvm-ink)}
.lvm-pack>p{margin:0;color:var(--ink-2)}
.lvm-pack .price{font:500 16px var(--head);color:var(--ink);margin:16px 0 20px;padding:16px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.lvm-pack .price b{font:800 42px/1 var(--head);color:var(--lvm-d);letter-spacing:-.02em}
.lvm-pack .price span{display:block;font:500 14px var(--sans);color:var(--muted);margin-top:8px}
.lvm-pack h4{font:700 13px var(--head);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 14px}
.lvm-pack .small{font-size:14px;margin-top:4px}
.lvm-why{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.lvm-why>div{display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 18px;align-content:center;border-radius:16px;padding:22px 26px;background:var(--lvm-l)}
.lvm-why .n{grid-row:1/3;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--lvm);color:#fff;font:800 18px var(--head)}
.lvm-why h3{font:700 19px/1.25 var(--head);margin:0;color:var(--lvm-ink)}
.lvm-why p{margin:0;color:var(--ink-2);font-size:15px}
.lvm-key h3{font-size:22px;margin-bottom:16px}
.lvm-areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.lvm-areas>div{border-radius:16px;padding:26px;background:var(--soft);border-top:5px solid var(--lvm)}
.lvm-areas h3{font:700 21px var(--head);margin:0 0 16px;color:var(--lvm-ink)}
.lvm-areas .ticks{margin:0}
.lvm-areas .ticks li{color:var(--ink-2)}
.lvm-mods{list-style:none;counter-reset:m;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.lvm-mods li{counter-increment:m;display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:center;padding:12px 16px 12px 12px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule);font:600 16px/1.3 var(--head);color:var(--lvm-ink)}
.lvm-mods li::before{content:counter(m,decimal-leading-zero);display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--lvm-l);color:var(--lvm-d);font:800 17px var(--head)}
.lvm-mods li:last-child::before{background:var(--lvm);color:#fff}
.lvm-steps{list-style:none;margin:0 0 28px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.lvm-steps li{border-radius:16px;padding:24px;background:var(--soft)}
.lvm-steps span{display:inline-block;font:700 12px var(--head);letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--lvm);border-radius:999px;padding:5px 11px;margin-bottom:14px}
.lvm-steps h3{font:700 19px/1.2 var(--head);margin:0 0 8px;color:var(--lvm-ink)}
.lvm-steps p{margin:0;color:var(--ink-2);font-size:15px}
.tutor{display:grid;grid-template-columns:320px minmax(0,1fr);gap:48px;align-items:start;padding:56px 0;border-bottom:1px solid var(--rule)}
.tutor img{display:block;width:100%;border-radius:18px}
.tutor h2{font:800 36px/1.1 var(--head);letter-spacing:-.02em;color:var(--lvm-ink);margin:0 0 6px}
.tutor .role{font:600 15px var(--head);color:var(--lvm-d);margin:0 0 20px}
.tutor .prose{max-width:72ch}
.brands{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 18px}
.brands span{background:var(--lvm-l);color:var(--lvm-ink);border-radius:999px;padding:6px 13px;font:600 13px var(--head)}
.soc{display:flex;gap:20px;margin:0;font:600 15px var(--head)}
.lvm-help{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.lvm-help a{display:block;border-radius:16px;padding:24px;background:var(--lvm-l);text-decoration:none;color:var(--lvm-ink)}
.lvm-help a:hover{background:var(--lvm);color:#fff}
.lvm-help h3{font:700 20px var(--head);margin:0 0 6px}
.lvm-help p{margin:0}
.faq{max-width:880px}
.faq details{border-bottom:1px solid var(--rule)}
.faq details:first-child{border-top:1px solid var(--rule)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 0;font:700 18px/1.3 var(--head);color:var(--lvm-ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--lvm-l);color:var(--lvm-d);font:600 22px/1 var(--head)}
.faq details[open] summary::after{content:"\2212";background:var(--lvm);color:#fff}
.faq summary:hover{color:var(--lvm-d)}
.faq .a{padding:0 54px 22px 0;color:var(--ink-2)}
.faq .a p{margin:0 0 10px}
.faq .a ul{margin:0 0 10px;padding-left:1.2em}
.faq .a li{margin-bottom:4px}
.lvm-what{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.lvm-what a{display:block;border-radius:16px;padding:24px;background:var(--soft);text-decoration:none;color:var(--ink);border-top:5px solid var(--c,var(--lvm))}
.lvm-what a:hover{background:#ebecee;color:var(--ink)}
.lvm-what h3{font:700 20px/1.2 var(--head);margin:0 0 8px}
.lvm-what p{margin:0;color:var(--ink-2);font-size:15px}
.team{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.team>div{text-align:center;border-radius:18px;padding:30px 20px 26px;background:var(--soft)}
.team img{width:140px;height:140px;border-radius:50%;object-fit:cover;display:block;margin:0 auto 18px;box-shadow:0 0 0 5px #fff,0 0 0 7px var(--lvm)}
.team h3{font:700 20px var(--head);margin:0 0 4px;color:var(--lvm-ink)}
.team p{margin:0 0 14px;font:600 12px var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--lvm-d)}
.team a{font:600 14px var(--head)}
.lvm-enrol{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:start}
.lvm-form{border-radius:18px;box-shadow:inset 0 0 0 1.5px var(--rule);padding:14px;background:#fff;min-height:400px}
.lvm-form iframe{display:block;width:100%;border:0}
.lvm-side{position:sticky;top:24px;display:grid;gap:18px}
.lvm-side .card dd{overflow-wrap:anywhere}
.lvm-foot{background:var(--lvm-ink);color:#cfd8db;margin-top:88px;font-size:15px}
.lvm-foot .wrap{display:grid;grid-template-columns:1.6fr 1fr 1.1fr 1.3fr;gap:36px;padding-top:48px;padding-bottom:44px}
.lvm-foot img{display:block;height:40px;width:auto;margin-bottom:20px}
.lvm-foot p{margin:0 0 12px}
.lvm-foot a{color:#fff}
.lvm-foot h2{font:700 15px var(--head);color:#fff;margin:0 0 12px}
.lvm-foot ul{list-style:none;margin:0;padding:0}
.lvm-foot li{margin:0 0 8px}
.lvm-foot li a{color:#cfd8db;text-decoration:none}
.lvm-foot li a:hover{color:#fff;text-decoration:underline}
.lvm-foot .btn{min-height:42px;padding:0 20px;font-size:14px;margin-top:4px}
main:has(.lvm-foot)+.site-foot{margin-top:0}
@media (max-width:1100px){
  .lvm-bar .wrap{flex-wrap:wrap;gap:0 16px;min-height:0;padding-top:12px}
  .lvm-logo{margin-right:auto}
  .lvm-logo img{height:34px}
  .lvm-bar ul{order:3;flex:1 0 100%;margin:10px calc(var(--gut) * -1) 0;padding:0 var(--gut) 10px;overflow-x:auto;scrollbar-width:none}
  .lvm-bar ul::-webkit-scrollbar{display:none}
  .lvm-four,.lvm-steps,.lvm-what,.team{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lvm-mods,.ticks.cols4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .lvm-hero .wrap,.lvm-split,.lvm-split.rev,.lvm-cta,.lvm-cta.slim,.lvm-pack-row,.tutor,.lvm-enrol{grid-template-columns:minmax(0,1fr)}
  .lvm-hero .wrap{gap:32px;padding-top:36px}
  .lvm-split.rev .lvm-pic{order:2}
  .lvm-pic{min-height:0;max-height:420px}
  .lvm-areas,.lvm-help{grid-template-columns:minmax(0,1fr)}
  .lvm-foot .wrap{grid-template-columns:1fr 1fr}
  .lvm-side{position:static}
  .tutor{gap:24px;padding:40px 0}
  .tutor img{max-width:280px}
  .lvm-cta{padding:32px 28px;gap:28px}
}
@media (max-width:600px){
  .lvm-four,.lvm-steps,.lvm-mods,.lvm-why,.ticks.cols2,.ticks.cols4{grid-template-columns:minmax(0,1fr)}
  .lvm-four{margin-top:-48px}
  .lvm-hero .wrap{padding-bottom:84px}
  .lvm-hero .lede,.lvm-page-hero .lede{font-size:17px}
  .lvm-page-hero .wrap{padding-top:34px;padding-bottom:34px}
  .lvm-h2,.lvm .prose h2{font-size:28px}
  .lvm-legal.prose h2{font-size:20px}
  .lvm-cta{padding:26px 20px}
  .lvm-stats{gap:8px}
  .lvm-stats>div{padding:14px 10px}
  .lvm-stats dd{font-size:26px}
  .lvm-stats dt{font-size:10px}
  .lvm-pack{padding:24px 20px}
  .lvm-why>div{padding:20px 18px;gap:4px 14px;grid-template-columns:38px minmax(0,1fr)}
  .lvm-why .n{width:38px;height:38px;font-size:16px}
  .team img{width:104px;height:104px}
  .team>div{padding:22px 12px 20px}
  .team h3{font-size:17px}
  .tutor h2{font-size:30px}
  .faq summary{font-size:17px}
  .faq .a{padding-right:0}
  .lvm-form{padding:6px;border-radius:14px}
  .lvm-foot .wrap{grid-template-columns:minmax(0,1fr);gap:26px}
  .lvm-promo{font-size:13px}
  .lvm-bar .btn{min-height:40px;padding:0 16px}
}

/* ---------- responsive ---------- */
@media (max-width:1140px){
  .menu-btn{display:inline-flex}
  .util .tel,.util .contact,.util .cp,.util .login{display:none}
  .site-nav{display:none;border-bottom:0}
  .nav-open .site-nav{display:block;position:absolute;left:0;right:0;top:100%;box-shadow:0 30px 50px -20px rgba(0,0,0,.35);max-height:calc(100vh - 90px);overflow:auto}
  .nav{flex-direction:column;gap:0;padding:8px 0 18px;margin:0}
  .nav>li{flex-wrap:wrap;border-bottom:1px solid var(--rule)}
  .nav>li>a{flex:1;padding:14px 4px;font-size:17px}
  .nav>li.is-current>a{box-shadow:none}
  .nav .m-only{display:flex}
  .sub-btn{margin:0;width:48px;height:48px;display:grid;place-items:center;padding:0}
  .sub-btn::before{transform:rotate(45deg) translate(-2px,-2px)}
  .open>.sub-btn::before{transform:rotate(225deg) translate(-2px,-2px)}
  .sub{position:static;display:none;width:100%;box-shadow:none;border-radius:0;padding:0 0 10px 8px;min-width:0}
  @media (hover:hover){.nav>li.has-sub:hover>.sub{display:none}}
  .nav>li.has-sub:focus-within>.sub{display:none}
  .nav>li.has-sub.open>.sub,.nav>li.has-sub.open:focus-within>.sub{display:block}
  .doors{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-hero .wrap{grid-template-columns:1fr 1fr;gap:48px}
  .years{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:900px){
  :root{--gut:20px}
  .home-hero .wrap,.two,.features,.mp,.quote{grid-template-columns:minmax(0,1fr)}
  .home-hero .wrap{gap:32px;padding-top:32px}
  .mosaic{aspect-ratio:auto;grid-template-rows:200px 200px;margin-right:0}
  .mosaic::after{display:none}
  .ben{grid-template-columns:1fr 1fr}
  .page-body.has-aside{grid-template-columns:minmax(0,1fr)}
  .side{position:static;max-width:420px}
  .mp-img{max-width:320px}
  .mp>.mp-img{display:none}
  .mp-img-m{display:block;margin:22px 0 28px}
  .foot-grid{grid-template-columns:1fr 1fr}
  .facts{grid-template-columns:1fr 1fr}
  .facts div:nth-child(3){border-left:0;padding-left:0}
  .facts div{padding-left:var(--gut);padding-right:0}
  .cards3,.stands{grid-template-columns:minmax(0,1fr)}
  .partner{grid-template-columns:minmax(0,1fr)}
  .app{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:600px){
  .head-row{min-height:72px;gap:12px}
  .logo img{height:44px}
  .util .join{display:none}
  .doors{grid-template-columns:minmax(0,1fr)}
  .door{min-height:0}
  .ben{grid-template-columns:minmax(0,1fr)}
  .search input{height:56px;font-size:16px;padding:0 14px}
  .search button{padding:0 18px}
  .mosaic{grid-template-rows:150px 150px}
  .mosaic figcaption{display:none}
  .quote{padding:24px}
  .quote blockquote{font-size:19px}
  .sec-h h2{font-size:28px}
  .feature,.feature.cra{grid-template-columns:96px minmax(0,1fr);gap:16px;padding:18px}
  .feature.cra .mark{width:84px}
  .feature h2{font-size:21px}
  .years{grid-template-columns:1fr 1fr}
  .foot-grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .prose{font-size:16px}
  .prose img[align],.prose img[style*="float"]{float:none!important;margin:6px 0!important}
  .prose table,.prose tbody,.prose tr,.prose td,.prose th{display:block;width:auto!important}
  .prose td{padding:0 0 10px}
  .cra-hero .logo-w{width:220px}
  .cra-hero{background-position:62% 45%}
  .cra-hero::before{background:rgba(15,8,13,.84)}
  .partners img{height:48px}
  .app .stores img{height:40px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{.site-head,.site-nav,.site-foot,.page-top .pager{display:none}}

/* ---------- Join section, online application, About, Events, Contact (section_pages.py) ---------- */
.join-bar{background:#fff;border-bottom:1px solid var(--rule);position:relative;z-index:2}
.join-bar .wrap{display:flex;align-items:center;gap:18px;min-height:62px}
.join-bar ul{display:flex;gap:4px;list-style:none;margin:0;padding:0;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}
.join-bar ul::-webkit-scrollbar{display:none}
.join-bar li a{display:block;padding:8px 13px;border-radius:999px;font:600 14px var(--head);color:var(--ink-2);text-decoration:none;white-space:nowrap}
.join-bar li a:hover{background:var(--soft);color:var(--ink)}
.join-bar li a[aria-current]{background:var(--ink);color:#fff}
.join-bar .btn{flex:none;min-height:42px;padding:0 20px;font-size:14px}
.join-hero.slim{padding:44px 0 36px}
.join-hero.slim h1{max-width:20ch}
.join-hero .btns{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.fee-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
.fee-chips p{margin:0;padding:12px 16px;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule)}
.fee-chips span{display:block;font-size:13px;color:var(--muted)}
.fee-chips b{font:800 20px var(--head);color:var(--ink)}
.fee-chips a{font-size:16px}
.join-pic{margin:0}
.join-pic img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover;border-radius:18px}
.join-pic figcaption{margin-top:8px;font-size:13px;color:var(--muted)}
.join-proof{margin:56px 0 0;padding:38px 42px;border-radius:20px;background:var(--teal-l);border-left:8px solid var(--teal)}
.join-proof blockquote{margin:0 0 14px;font:700 clamp(21px,2.4vw,30px)/1.35 var(--head);color:var(--ink);letter-spacing:-.01em}
.join-proof figcaption{color:var(--ink-2);font-size:15px}
.join-proof figcaption b{font:700 16px var(--head);color:var(--ink)}
.join-proof a,.jq figcaption a{color:inherit}
.join-more{margin:14px 0 0;text-align:right;font:600 15px var(--head)}
.join-note{margin:22px 0 0;color:var(--muted);font-size:15px}
.join-cta a:not(.btn){color:#fff}
.jo-btns{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:auto 0 0!important}
.jo-btns a:not(.btn){font:600 14px var(--head);color:var(--ink)}
.jo .jo-btns .btn{margin:0}
.work-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:220px;gap:12px}
.work-strip a{position:relative;display:block;overflow:hidden;border-radius:14px;background:var(--soft);color:#fff;text-decoration:none}
.work-strip a:nth-child(2),.work-strip a:nth-child(3){grid-row:span 2}
.work-strip img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.work-strip a:hover img{transform:scale(1.04)}
.work-strip span{position:absolute;left:0;right:0;bottom:0;padding:28px 14px 12px;background:linear-gradient(transparent,rgba(0,0,0,.72));font-size:13px;line-height:1.35}
.work-strip span b{display:block;font:700 15px var(--head)}
.join-3{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;counter-reset:j3}
.join-3 li{counter-increment:j3;padding:24px;border-radius:16px;background:var(--soft)}
.join-3 li::before{content:counter(j3);display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin:0 0 12px;border-radius:50%;background:var(--ink);color:#fff;font:800 18px var(--head)}
.join-3 b{display:block;font:700 18px var(--head);margin:0 0 4px}
.join-3 span{color:var(--ink-2);font-size:15px}
.join-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.join-four a{display:flex;flex-direction:column;gap:8px;padding:22px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule);border-top:6px solid var(--c);text-decoration:none;color:var(--ink-2);font-size:15px;line-height:1.5}
.join-four a:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.join-four b{font:800 21px var(--head);color:var(--ink)}
.join-four em{margin-top:auto;font:700 14px var(--head);font-style:normal;color:var(--ink)}
.join-four em::after{content:" \2192"}
.join-year{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:3px solid var(--ink)}
.join-year li{padding:16px 18px 18px 0;border-bottom:1px solid var(--rule)}
.join-year b{display:block;font:800 18px var(--head);color:var(--ink);margin:0 0 4px}
.join-year span{font-size:15px;color:var(--ink-2);line-height:1.5}
.join-year.hist{grid-template-columns:repeat(5,minmax(0,1fr))}
.join-year.hist.six{grid-template-columns:repeat(3,minmax(0,1fr))}
.join-year.hist.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.hist-story{max-width:780px}
.hist-story h2{font:800 28px/1.15 var(--head);margin:44px 0 14px}
.hist-story h2:first-child{margin-top:0}
.hist-story p{color:var(--ink-2);font-size:17px;line-height:1.7;margin:0 0 1.1em}
.hist-pic{margin:26px 0 30px}
.hist-pic img{display:block;width:100%;max-width:640px;height:auto;border-radius:14px}
.hist-pic figcaption{margin-top:8px;font-size:14px;color:var(--muted)}
.join-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 40px}
.jr{display:flex;gap:18px;align-items:flex-start}
.jr-n{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--teal);color:#05291f;font:800 18px var(--head)}
.jr h2{font:700 20px var(--head);margin:6px 0 6px}
.jr p{margin:0;color:var(--ink-2);line-height:1.6}
.join-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.join-tiles.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.join-tiles div{padding:22px;border-radius:16px;background:var(--soft);border-top:6px solid var(--c)}
.join-tiles h2{font:700 19px var(--head);margin:0 0 8px}
.join-tiles p{margin:0;color:var(--ink-2);font-size:15px;line-height:1.55}
.join-split{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:start}
.join-split h2{font:800 26px var(--head);margin:0 0 10px}
.join-split h2:not(:first-child){margin-top:30px}
.join-split p{color:var(--ink-2);line-height:1.65}
.say-wall{columns:3 300px;column-gap:18px}
.say-wall .jq{break-inside:avoid;margin:0 0 18px}
.fee-sec{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px;align-items:start}
.fee-calc{padding:28px;border-radius:18px;background:var(--ink);color:#fff}
.fee-calc h2{font:800 24px var(--head);margin:0 0 14px;color:#fff}
.fee-calc label{display:block;font:600 14px var(--head);margin:0 0 8px;color:#e4e4e8}
.fee-calc input{width:100%;padding:14px 16px;border-radius:12px;border:0;font:700 22px var(--head);color:var(--ink)}
.fc-out{min-height:60px;margin:16px 0;font-size:15px;color:#d4d4da}
.fc-out b{display:block;font:800 30px var(--head);color:#fff}
.fee-table table{width:100%;border-collapse:collapse;font-size:15px}
.fee-table caption{text-align:left;font:800 24px var(--head);margin:0 0 12px;color:var(--ink)}
.fee-table th,.fee-table td{text-align:left;padding:14px 10px 14px 0;border-bottom:1px solid var(--rule);vertical-align:top}
.fee-table thead th{font:700 13px var(--head);color:var(--muted);border-bottom:2px solid var(--ink)}
.fee-table tbody th{font:700 16px var(--head);color:var(--ink)}
.fee-table td b{display:block;font:800 17px var(--head);color:var(--ink)}
.fee-table small{color:var(--muted);font-size:13px;white-space:nowrap}
.fee-table td:nth-child(3){white-space:nowrap;padding-right:18px}
.fee-table td a{font:600 14px var(--head);color:var(--teal-d)}
.new-tag{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:var(--teal);color:#05291f;font:700 11px var(--head);vertical-align:middle}
.join-learnvm,.join-iso{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;margin-top:64px;padding:32px 36px!important;border-radius:20px;background:var(--soft)}
.join-learnvm>div,.join-iso>div{max-width:720px}
.join-learnvm h2,.join-iso h2{font:800 26px var(--head);margin:0 0 8px}
.join-learnvm p:not(.eyebrow),.join-iso p:not(.eyebrow){margin:0;color:var(--ink-2)}
/* 103 KCR co-working, on the Join pages (KCR in section_pages.py) */
.join-kcr{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:36px;align-items:center;margin-top:64px;padding:32px 36px!important;border-radius:20px;background:var(--soft)}
.join-kcr-pic{margin:0}
.join-kcr-pic img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 45%;border-radius:14px}
.join-kcr h2{font:800 26px var(--head);margin:0 0 10px}
.join-kcr p:not(.eyebrow){margin:0 0 14px;color:var(--ink-2)}
.join-kcr .ticks{margin:0 0 22px!important}
.join-kcr .btns{margin:0}
@media (max-width:760px){.join-kcr{grid-template-columns:minmax(0,1fr);gap:22px;padding:24px 22px!important}.join-kcr-pic img{aspect-ratio:16/10}}
.about-people{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.about-people figure{margin:0}
.about-people img{display:block;width:100%;aspect-ratio:3/4;height:auto;object-fit:cover;border-radius:14px}
.about-people figcaption{margin-top:8px;font-size:14px;color:var(--ink-2);line-height:1.4}
.about-people b{display:block;font:700 15px var(--head);color:var(--ink)}
.people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.person{display:flex;gap:16px;align-items:flex-start;padding:24px;border-radius:16px;background:var(--soft)}
.person-pic{flex:none;width:72px;height:72px;border-radius:50%;object-fit:cover;object-position:50% 25%;background:var(--soft)}
.people:not(.mini) .person-i{width:72px;height:72px;font-size:22px}
.people.mini .person-pic{width:56px;height:56px}
.person-i{flex:none;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--ink);color:#fff;font:800 18px var(--head)}
.person h2,.person h3{font:800 20px var(--head);margin:0}
.person-role{margin:2px 0 10px;font:600 14px var(--head);color:var(--teal-d)}
.person p{color:var(--ink-2);font-size:15px;line-height:1.6}
.person-c{margin:10px 0 0;font-weight:600;display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px}
.person-li{display:inline-flex;align-items:center;gap:6px;color:#0a66c2;text-decoration:none}
.person-li:hover{text-decoration:underline}
.person-li svg{width:16px;height:16px;flex:none}
.people.mini .person{padding:18px}
.people.mini .person-role{margin-bottom:4px}
.council{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cm{display:flex;align-items:center;gap:14px;padding:14px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule)}
.cm>div{flex:1;min-width:0}
.cm-pic{flex:none;width:100px;height:75px;object-fit:cover;object-position:50% 20%;border-radius:10px;background:var(--soft)}
.cm h3{font:700 17px var(--head);margin:0}
.cm p{margin:2px 0 0;font-size:14px;color:var(--ink-2)}
.cm .cm-li{margin:4px 0 0;font-size:13px}
.cm .cm-role{margin:0 0 2px;font:700 12px var(--head);text-transform:uppercase;letter-spacing:.06em;color:var(--teal-d)}
.cm-logo{flex:none;width:72px;height:44px;object-fit:contain}
.council.officers .cm{box-shadow:inset 0 0 0 2px var(--ink)}
.ev-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.ev{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:22px;align-items:start;padding:20px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule)}
.ev.sdea{box-shadow:inset 0 0 0 2px var(--teal)}
.ev-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:88px;border-radius:12px;background:var(--ink);color:#fff;text-align:center;padding:8px 4px}
.ev.sdea .ev-date{background:var(--teal);color:#05291f}
.ev-date b{font:800 24px/1.05 var(--head)}
.ev-date span{font:600 12px var(--head);text-transform:uppercase;letter-spacing:.05em}
.ev-kind{margin:0 0 2px;font:700 12px var(--head);text-transform:uppercase;letter-spacing:.06em;color:var(--teal-d)}
.ev h3{font:800 21px var(--head);margin:0 0 4px}
.ev h3 a{color:var(--ink);text-decoration:none}
.ev h3 a:hover{text-decoration:underline}
.ev-where{margin:0 0 8px;font:600 14px var(--head);color:var(--ink-2)}
.ev-body>p:not(.ev-kind):not(.ev-where){margin:0;color:var(--ink-2);font-size:15px;line-height:1.55}
.ev-links{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px!important}
.ev-links a{font:600 14px var(--head);color:var(--teal-d)}
.ev-pic{width:220px;height:150px;object-fit:cover;border-radius:12px}
.ev-list.past .ev{background:var(--soft);box-shadow:none}
.ev-list.past .ev-date{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--rule)}
.contact-routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:44px!important}
.contact-routes a{display:block;padding:20px 22px;border-radius:14px;background:var(--soft);text-decoration:none;color:var(--ink-2);font-size:15px;line-height:1.5}
.contact-routes a:hover{background:var(--teal-l)}
.contact-routes b{display:block;font:700 18px var(--head);color:var(--ink);margin:0 0 4px}
.contact-main{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px;align-items:start}
.contact-form h2{font:800 26px var(--head);margin:0 0 12px}
.contact-form iframe{display:block;width:100%;border-radius:12px}
.contact-side>*+*{margin-top:14px}
.contact-big{font:800 22px var(--head)!important;color:var(--ink)!important;margin:0 0 4px!important}
.contact-big a{color:inherit;text-decoration:none}
.contact-social{display:flex;flex-wrap:wrap;gap:8px 16px}
/* the online application (join.php) */
.join-pick{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 20px}
.join-pick a{display:flex;flex-direction:column;gap:6px;padding:22px;border-radius:16px;box-shadow:inset 0 0 0 1.5px var(--rule);text-decoration:none;color:var(--ink-2);font-size:15px;line-height:1.5}
.join-pick a:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.join-pick b{font:800 20px var(--head);color:var(--ink)}
.join-pick em{font:700 15px var(--head);font-style:normal;color:var(--teal-d);margin-top:auto}
.join-help{font-size:15px}
.join-types{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px}
.join-types a{padding:7px 14px;border-radius:999px;background:var(--soft);font:600 14px var(--head);color:var(--ink);text-decoration:none}
.join-types a[aria-current]{background:var(--ink);color:#fff}
.join-form fieldset{margin:0 0 20px;padding:22px 24px 24px;border:0;border-radius:18px;background:var(--soft)}
.join-form legend{float:left;width:100%;padding:0;margin:0 0 16px;font:800 20px var(--head);color:var(--ink);display:flex;align-items:center;gap:10px}
.join-form legend span{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff;font-size:15px}
.join-form .enq{clear:both}
.join-form .enq small{display:block;margin-top:4px;font-size:13px;color:var(--muted)}
.join-form .lbl{display:block;font:600 13px var(--head);margin:0 0 8px;color:var(--ink)}
.join-form .check label{display:flex;gap:10px;align-items:center;font:500 15px var(--sans)}
.join-form .check input{width:20px;height:20px;flex:none}
.join-form select{display:block;width:100%;border:1.5px solid #cfd2d6;border-radius:10px;padding:10px 12px;font:16px var(--sans);background:#fff}
.join-band{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.join-band label{position:relative;display:block;padding:14px 16px 14px 50px;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 1.5px #cfd2d6;cursor:pointer;font-weight:400}
.join-band label:has(input:checked){box-shadow:inset 0 0 0 2.5px var(--teal-d);background:var(--teal-l)}
.join-band input{position:absolute;left:16px;top:17px;width:20px;height:20px}
.join-band b{display:block;font:700 16px var(--head);color:var(--ink)}
.join-band span{font-size:14px;color:var(--ink-2)}
.join-cats{clear:both;margin:16px 0 0;padding:14px 16px;border-radius:12px;background:#fff}
.join-cats summary{cursor:pointer;font:700 15px var(--head);color:var(--ink)}
.join-cats summary small{font:400 13px var(--sans);color:var(--muted);margin-left:6px}
.jc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin-top:14px}
.jc-fam b{display:block;font:700 13px var(--head);text-transform:uppercase;letter-spacing:.05em;color:var(--teal-d);margin:0 0 6px}
.jc-fam label,.join-ints label{display:flex;gap:8px;align-items:flex-start;padding:3px 0;font-size:14px;line-height:1.4;color:var(--ink-2);cursor:pointer}
.jc-fam input,.join-ints input{flex:none;width:17px;height:17px;margin-top:1px}
.join-ints{clear:both;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;margin:0 0 12px}
.join-ints label{font-size:15px;padding:8px 12px;border-radius:10px;background:#fff}
.join-decl{clear:both;margin:16px 0 12px;padding:16px 18px;border-radius:12px;background:#fff;font-size:14px;line-height:1.55;color:var(--ink-2)}
.join-decl p{margin:0 0 10px!important}
.join-agree{display:flex;gap:10px;align-items:center;font:700 15px var(--head)!important;color:var(--ink);cursor:pointer}
.join-agree input{width:22px;height:22px;flex:none}
.join-form .enq-small{clear:both;margin:0 0 14px;font-size:14px;line-height:1.5;color:var(--muted)}
.join-form #j-addr{min-height:84px}
.join-form button.btn{min-height:52px;padding:0 30px;font-size:16px;background:var(--teal);color:#05291f}
.join-sum{background:var(--ink)!important;color:#fff}
.join-sum h2{color:#fff}
.join-sum .enq-small{color:#c9c9cf;font-size:13px}
.join-fee{font:800 22px/1.25 var(--head)!important;color:#fff!important;margin:4px 0 8px!important}
.join-fee small{display:block;font:500 14px var(--sans);color:#c9c9cf}
.join-sum .ticks{gap:8px;margin:0!important}
.join-sum .ticks li{border:0;padding-top:0;padding-bottom:0;color:#e4e4e8;font-size:14px}
.join-steps{padding-left:1.2em}
.join-steps li{margin-bottom:.7em}
.join-next{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.join-next a{display:block;padding:18px;border-radius:14px;background:var(--soft);text-decoration:none;color:var(--ink-2);font-size:14px;line-height:1.45}
.join-next b{display:block;font:700 16px var(--head);color:var(--ink);margin-bottom:4px}
.adm-new td{background:#fffbea}
@media (max-width:1000px){
  .work-strip{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:200px}
  .join-four,.join-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .join-year,.join-year.hist,.join-year.hist.six,.join-year.hist.four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .join-split,.fee-sec,.contact-main{grid-template-columns:minmax(0,1fr)}
  .join-tiles.three,.people,.council,.contact-routes{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ev{grid-template-columns:84px minmax(0,1fr)}
  .ev-pic{display:none}
}
@media (max-width:700px){
  .join-bar .btn{display:none}
  .ticks.cols2,.join-3,.join-four,.join-tiles,.join-tiles.three,.join-rows,.people,.council,.contact-routes,.join-pick,.join-next,.join-band,.jc-grid,.join-ints{grid-template-columns:minmax(0,1fr)}
  .join-year,.join-year.hist,.join-year.hist.six,.join-year.hist.four{grid-template-columns:minmax(0,1fr)}
  .work-strip{grid-auto-rows:170px}
  .join-proof{padding:26px 22px}
  .join-learnvm,.join-iso{padding:24px 22px!important}
  .ev{grid-template-columns:70px minmax(0,1fr);gap:14px;padding:16px}
  .ev-date b{font-size:19px}
  .join-form fieldset{padding:18px 16px 20px}
  .about-people{grid-template-columns:1fr 1fr}
}
@media (max-width:700px){
  .fee-table thead{display:none}
  .fee-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;padding:14px 0;border-bottom:1px solid var(--rule)}
  .fee-table tbody th,.fee-table tbody td{display:block;padding:0;border:0}
  .fee-table tbody td:nth-child(2){grid-column:1/-1;grid-row:2;font-size:14px;color:var(--ink-2)}
  .fee-table tbody td:nth-child(3){grid-column:2;grid-row:1;text-align:right;padding:0}
  .fee-table tbody td:nth-child(4){grid-column:1/-1;grid-row:3}
}

/* the SDEA Newswire cost comparison (Join pages) */
.nw-compare{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.nw-compare>div{padding:24px;border-radius:16px;background:var(--soft)}
.nw-compare p{margin:0;color:var(--ink-2);font-size:15px;line-height:1.5}
.nw-compare .nw-who{font:700 13px var(--head);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}
.nw-compare .nw-price{font:800 34px/1.05 var(--head);color:var(--ink);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.nw-compare .nw-per{font:600 14px var(--head);color:var(--ink-2);margin:4px 0 12px}
.nw-compare .nw-sdea{background:var(--teal);}
.nw-compare .nw-sdea p,.nw-compare .nw-sdea .nw-who,.nw-compare .nw-sdea .nw-price,.nw-compare .nw-sdea .nw-per{color:#05291f}
.nw-sum{margin:18px 0 6px;font:600 18px/1.5 var(--head);color:var(--ink)}
.nw-note{margin:0;font-size:13px;color:var(--muted)}
@media (max-width:700px){.nw-compare{grid-template-columns:minmax(0,1fr)}.nw-compare .nw-price{font-size:30px}}

/* Creative Retail Awards winners pages */
.cra-win-hero{background:linear-gradient(135deg,#1c1c1e,#3a1430);color:#fff;padding:52px 0 44px}
.cra-win-hero .eyebrow{color:#ff8cc0;text-transform:uppercase;letter-spacing:.08em;font:700 13px var(--head)}
.cra-win-hero h1{font:800 clamp(34px,4.4vw,56px)/1.04 var(--head);letter-spacing:-.025em;margin:0 0 16px;color:#fff}
.cra-win-hero .lede{font-size:18px;line-height:1.6;color:#e4e4e8;max-width:62ch;margin:0}
.win-top{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.win-big{margin:0;border-radius:18px;overflow:hidden;background:var(--soft);display:flex;flex-direction:column}
.win-big img{display:block;width:100%;height:auto;aspect-ratio:900/721;object-fit:cover}
.win-big>div{padding:20px 24px 24px}
.win-big h2{font:800 26px/1.15 var(--head);margin:0 0 4px}
.win-big p{margin:0;color:var(--ink-2);font-size:15px}
.win-cat{margin:0 0 6px!important;font:700 12px var(--head)!important;text-transform:uppercase;letter-spacing:.06em;color:var(--magenta-d)!important}
.win-co{font:600 15px var(--head)!important;color:var(--ink)!important;margin:0 0 10px!important}
.win-co a{color:inherit}
.win-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.win-card{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule)}
.win-card img{display:block;width:100%;height:auto;aspect-ratio:900/721;object-fit:cover}
.win-card>div{padding:16px 18px 18px}
.win-card h3{font:800 18px/1.25 var(--head);margin:0 0 4px}
.win-hc-h{margin:0 0 4px;font:700 11px var(--head);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.win-hc{list-style:none;margin:0;padding:0;font-size:14px;line-height:1.45;color:var(--ink-2)}
.win-hc a{color:inherit}
.win-judges{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.win-judges li{padding:16px;border-radius:14px;background:var(--soft);font-size:14px;color:var(--ink-2);line-height:1.45}
.win-judges b{display:block;font:700 16px var(--head);color:var(--ink);margin-bottom:4px}
@media (max-width:1000px){.win-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.win-judges{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.win-top,.win-grid,.win-judges{grid-template-columns:minmax(0,1fr)}}

/* Links page */
.link-sec .sec-h h2{display:flex;align-items:center;gap:12px}
.link-sec .sec-h h2::before{content:"";width:14px;height:14px;border-radius:4px;background:var(--c)}
.link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.link-card{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule);border-top:5px solid var(--c);text-decoration:none;color:var(--ink-2);font-size:15px;line-height:1.5}
.link-card:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.link-card b{font:800 19px var(--head);color:var(--ink)}
.link-card em{margin-top:auto;font:600 13px var(--head);font-style:normal;color:var(--teal-d)}
.link-card em::after{content:" \2197"}
.link-sec{padding-top:56px}
@media (max-width:600px){.link-grid{grid-template-columns:minmax(0,1fr)}}
/* members' log-in, new password and change password */
.login-box{max-width:480px;margin:6px 0 22px;padding:24px 26px 26px;border-radius:18px;background:var(--soft)}
.login-box .enq{grid-template-columns:minmax(0,1fr)}
.login-box .enq small{display:block;margin-top:4px;font-size:13px;color:var(--muted)}
.login-box button.btn{margin-top:18px;min-height:50px;padding:0 30px;font-size:16px}
.login-box .login-links{margin:16px 0 0;font-size:15px}
.login-box .login-links a{font-weight:600}
.login-box .pw-show{display:flex;gap:8px;align-items:center;margin-top:10px;font:500 14px var(--sans);color:var(--muted)}
.login-box .pw-show input{width:18px;height:18px;margin:0}
.login-steps{margin:0 0 18px;padding-left:22px}
.login-steps li{margin:0 0 6px}
.adm-sql{display:block;padding:12px 14px;border-radius:10px;background:#0f1720;color:#e6edf3;font:13px/1.5 ui-monospace,Consolas,monospace;white-space:pre-wrap;word-break:break-all}
@media (max-width:600px){.login-box{padding:20px 18px 22px}}
/* page not found */
.nf-search{max-width:640px;margin-top:24px}
/* admin: profile health */
.prof-score{display:inline-block;min-width:64px;padding:3px 8px;border-radius:999px;font:700 13px var(--head);color:var(--ink);background:linear-gradient(90deg,var(--teal-l) var(--p),#fde8ea var(--p))}
.prof-table td{vertical-align:top}
.prof-table .btn{min-height:34px;padding:0 14px;font-size:13px}
.adm-cards.five{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:800px){.adm-cards.five{grid-template-columns:1fr 1fr}}
/* Directory page */
.dir-cover img{max-height:560px;width:auto;margin:0 auto;box-shadow:0 24px 40px -22px rgba(0,0,0,.45);border-radius:6px}
.dir-app{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:22px}
.dir-app span{font:600 14px var(--head);color:var(--ink-2);margin-right:4px}
.dir-app img{display:block;height:40px;width:auto}
.dir-spreads{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.dir-spreads figure{margin:0}
.dir-spreads img{display:block;width:100%;height:auto;border-radius:8px;box-shadow:0 0 0 1px var(--rule)}
.dir-spreads figcaption{margin-top:8px;font-size:13px;color:var(--muted)}
.dir-box{padding:24px 26px;border-radius:18px;background:var(--soft)}
.dir-box h2{margin-top:0}
@media (max-width:800px){.dir-spreads{grid-template-columns:minmax(0,1fr)}}
.link-logo{display:flex;align-items:center;height:52px;margin:0 0 10px}
.link-logo img{display:block;width:auto;height:auto;max-height:46px;max-width:170px}
/* privacy page */
.policy-wrap{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;padding:40px 0 64px;align-items:start}
.policy-toc{position:sticky;top:24px;padding:18px 20px;border-radius:14px;background:var(--soft);font-size:14px}
.policy-toc p{margin:0 0 8px;font:700 13px var(--head);text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.policy-toc ol{margin:0;padding-left:1.2em}
.policy-toc li{margin:0 0 6px}
.policy-toc a{color:var(--ink);text-decoration:none}
.policy-toc a:hover{text-decoration:underline}
.policy h2{scroll-margin-top:20px}
.policy-table{width:100%;margin:0 0 1.2em;font-size:15px;line-height:1.5}
.policy-table th,.policy-table td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--rule)}
.policy-table th{font:700 14px var(--head);color:var(--ink);background:var(--soft)}
.policy-table td:first-child{font-family:ui-monospace,Consolas,monospace;font-size:13px;color:var(--ink);white-space:nowrap}
@media (max-width:900px){.policy-wrap{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:24px}.policy-toc{position:static}}
@media (max-width:600px){.policy-table td:first-child{white-space:normal;word-break:break-word}}
.join-hero.slim.dir-hero{padding:30px 0 24px}
.dir-hero h1{font-size:clamp(30px,3.4vw,44px)}
.dir-hero .lede{margin-bottom:0}
.dir-read{padding:0 0 12px}
.dir-frame{position:relative;width:100%;aspect-ratio:16/10;max-height:82vh;border-radius:14px;overflow:hidden;background:#1d1d1f;box-shadow:0 20px 40px -24px rgba(0,0,0,.45)}
.dir-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.dir-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;margin-top:18px}
.dir-bar .btns{margin:0}
.dir-bar .dir-app{margin-top:0}
@media (max-width:700px){.dir-frame{aspect-ratio:3/4;max-height:78vh}}
/* 2026 shortlist page */
.cra-sl-hero{padding-bottom:36px}
.cra-sl-hero .btns{margin:22px 0 0}
.sl-read{padding-top:28px}
.sl-facts{margin:28px 0 8px}
.sl-story{margin:28px 0 0}
.sl-story .standfirst{font-size:20px;line-height:1.55;color:var(--ink)}
.sl-quote{max-width:760px}
.sl-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:60px;align-items:start}
.sl-main .prose,.sl-main .sl-quote{max-width:none}
.sl-main .sl-quote{margin-top:44px}
.sl-side{position:sticky;top:24px;margin-top:34px;display:grid;gap:16px}
.sl-card{border-radius:14px;background:var(--soft);padding:20px 22px;font-size:15px}
.sl-card .eyebrow{margin:0 0 10px}
.sl-card p{margin:0 0 12px}
.sl-card.dark{background:#1d1218;color:#fff;background-image:radial-gradient(circle at 100% 0,rgba(200,30,110,.45),transparent 60%)}
.sl-card.dark .eyebrow{color:#f59ac2}
.sl-card.dark p{color:rgba(255,255,255,.82)}
.sl-when b{display:block;font:800 20px/1.25 var(--head);color:#fff;margin-bottom:2px}
.sl-card .btn{margin-top:4px}
.sl-links{list-style:none;margin:0;padding:0}
.sl-links li{border-top:1px solid var(--rule)}
.sl-links li:first-child{border-top:0}
.sl-links a{display:block;padding:10px 0;color:var(--ink);text-decoration:none;font:600 15px/1.35 var(--head)}
.sl-links a:hover{color:var(--magenta-d)}
.sl-links a::after{content:" \2192";color:var(--magenta)}
.sl-years{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:0!important}
.sl-years a{padding:7px 0;text-align:center;border-radius:999px;background:#fff;color:var(--ink);text-decoration:none;font:600 14px var(--head)}
.sl-years a:hover{background:var(--magenta);color:#fff}
@media (max-width:980px){.sl-layout{grid-template-columns:1fr;gap:0}.sl-side{position:static;margin-top:36px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}
@media (max-width:700px){.sl-facts{grid-template-columns:1fr 1fr}.sl-facts div:nth-child(3){border-left:0;padding-left:0}}
/* site search */
.util .find{display:inline-flex;align-items:center;gap:7px}
.util .find svg{width:18px;height:18px}
.ss-hero .search{max-width:720px;margin-top:22px}
.ss-hero h1{word-break:break-word}
.ss-body{padding-top:30px}
.ss-intro{font-size:18px;max-width:720px;color:var(--ink-2)}
.ss-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:56px;align-items:start}
.ss-h{font:800 22px var(--head);margin:0 0 14px;color:var(--ink)}
.ss-main .ss-h:not(:first-child){margin-top:36px}
.ss-note{color:var(--muted);margin:-4px 0 16px}
.ss-mem{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.ss-mem a{display:grid;grid-template-columns:52px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:10px 14px 10px 10px;border-radius:12px;background:var(--soft);text-decoration:none;color:var(--ink);min-height:72px}
.ss-mem a:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.ss-mem img,.ss-mono{grid-column:1;grid-row:1/3;width:52px;height:52px;border-radius:8px;background:#fff;object-fit:contain;padding:4px;box-sizing:border-box}
.ss-mono{display:grid;place-items:center;font:800 22px var(--head);color:var(--teal-d);background:var(--teal-l)}
.ss-mem b{grid-column:2;grid-row:1;font:700 15px/1.3 var(--head);align-self:end}
.ss-mem em{grid-column:2;grid-row:2;font-style:normal;font-size:13px;color:var(--muted);align-self:start}
.ss-mem b:last-child{grid-row:1/3;align-self:center}
.ss-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}
.ss-list li{border-bottom:1px solid var(--rule)}
.ss-list a{display:block;padding:16px 4px;text-decoration:none;color:var(--ink-2)}
.ss-list a:hover b{text-decoration:underline;text-underline-offset:3px}
.ss-sec{display:block;font:600 12px var(--head);letter-spacing:.06em;text-transform:uppercase;color:var(--teal-d);margin-bottom:3px}
.ss-list b{display:block;font:700 18px/1.3 var(--head);color:var(--ink);margin-bottom:4px}
.ss-snip{display:block;font-size:15px;line-height:1.55}
.ss-snip mark{background:#fde3ef;color:var(--ink);padding:0 1px;border-radius:2px}
.ss-more{margin-top:22px}
.ss-side{display:grid;gap:16px;position:sticky;top:24px}
@media (max-width:980px){.ss-grid{grid-template-columns:1fr;gap:28px}.ss-side{position:static}}
@media (max-width:1140px){.util .find span{display:none}.util .find{width:44px;height:44px;justify-content:center;border-radius:999px;background:var(--soft)}}
/* projects gallery */
.pg-hero .lede{max-width:760px}
.pg-filter{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0 6px}
.pg-filter button{border:0;border-radius:999px;background:var(--soft);color:var(--ink);font:600 14px var(--head);padding:10px 16px;cursor:pointer}
.pg-filter button:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.pg-filter button[aria-pressed="true"]{background:var(--ink);color:#fff}
.pg-count{font-size:14px;color:var(--muted);margin:6px 0 18px;min-height:1.4em}
.pg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:26px 20px}
.pg-item{margin:0;display:flex;flex-direction:column}
.pg-item[hidden]{display:none}
.pg-pic{display:block;border-radius:12px;overflow:hidden;background:var(--soft);aspect-ratio:5/4}
.pg-pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.pg-pic:hover img{transform:scale(1.04)}
.pg-item figcaption{padding:10px 2px 0;font-size:14px;line-height:1.45;color:var(--ink-2)}
.pg-tag{display:block;font:600 11.5px var(--head);letter-spacing:.06em;text-transform:uppercase;color:var(--teal-d);margin-bottom:3px}
.pg-item b{display:block;font:700 16px/1.3 var(--head);margin-bottom:3px}
.pg-item b a{color:var(--ink);text-decoration:none}
.pg-item b a:hover{text-decoration:underline;text-underline-offset:3px}
.pg-by{display:block}
.pg-by a{color:var(--teal-d);font-weight:600}
.pg-grid+.join-cta{margin-top:56px}

/* SDEA admin: Newsletter (sdea-admin/newsletter.php) */
.nl-sec{font:700 16px var(--head);margin:18px 0 8px}
.nl-list{display:grid;gap:6px}
.nl-item{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:10px;background:var(--soft)}
.pj-adm .nl-item label.nl-pick{flex:1;display:flex;align-items:center;gap:12px;font:400 14px var(--sans);min-width:0}
.prose .nl-item img{flex:none;width:64px;height:48px;object-fit:cover;border-radius:6px;margin:0;background:#fff}
.nl-item span{display:flex;flex-direction:column;min-width:0}
.nl-item b{font:700 14px/1.3 var(--head)}
.nl-item small{color:var(--muted);font-size:12.5px;line-height:1.4}
.pj-adm .nl-item label.nl-lead{flex:none;display:flex;align-items:center;gap:6px;font:500 13px var(--sans);color:var(--ink-2)}
.nl-older{margin:16px 0 0}
.nl-older summary{cursor:pointer;font:600 14px var(--head)}
.pj-adm .nl-extras label{display:flex;align-items:center;gap:8px;font:400 14px var(--sans);margin:0 0 8px}
.nl-actions{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center}
.nl-test{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.pj-adm .nl-test label{font:600 13px var(--head)}
.pj-adm .nl-test input{width:260px;margin:0}
.nl-code{width:100%;font:12px/1.4 ui-monospace,Consolas,monospace;border:1.5px solid #cfd2d6;border-radius:8px;padding:10px}
.nl-steps{margin:0 0 14px;padding-left:20px;font-size:14px}
.nl-preview{display:block;width:100%;height:1500px;border:1px solid var(--rule);border-radius:12px;background:#e9ebee}

/* search results: the card in the right-hand column when no display advert matches (was a picture of dice) */
.res-brief{max-width:280px;margin:0 auto;padding:22px;border-radius:16px;background:var(--soft);text-align:left}
.res-brief .res-brief-k{font:600 11.5px var(--head);letter-spacing:.06em;text-transform:uppercase;color:var(--teal-d);margin:0 0 6px}
.res-brief h2{font:800 20px/1.2 var(--head);color:var(--ink);margin:0 0 8px}
.res-brief p{font-size:14px;line-height:1.5;color:var(--ink-2);margin:0 0 14px}

/* YouTube videos (profiles, project pages): the picture with a play button, then the player */
.ytv{margin:24px 0}
.yt-play,.prose .yt-play{position:relative;display:block;width:100%;padding:0;border:0;border-radius:12px;overflow:hidden;background:#000;cursor:pointer;aspect-ratio:16/9;font:inherit}
.prose .yt-play img,.yt-play img{display:block;width:100%;height:100%;object-fit:cover;margin:0;border-radius:0;opacity:.92;transition:opacity .2s}
.yt-play:hover img,.yt-play:focus-visible img{opacity:1}
.yt-btn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);line-height:0;filter:drop-shadow(0 2px 6px rgba(0,0,0,.35))}
.yt-play:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.yt-frame{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:12px;background:#000}
.ytv figcaption{margin-top:8px;font-size:13px}
.mp-video{margin-top:36px;padding-top:24px;border-top:1px solid var(--rule)}
.mp-video h2{font:800 24px/1.15 var(--head);margin:0 0 14px}
.mp-video .ytv{margin:0}

/* member projects: project.php, cards on profiles and in the members' area, Add a project, the admin page */
.pj-facts{display:flex;flex-wrap:wrap;gap:10px 32px;margin:0 0 24px;padding:14px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.pj-facts dt{font:600 11.5px var(--head);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.pj-facts dd{margin:2px 0 0;font-weight:500}
.pj-hero a{display:block;cursor:zoom-in}
.pj-hero figcaption{margin-top:8px;font-size:14px;color:var(--muted)}
.pj-grid{margin:28px 0}
.pj-credits{margin:30px 0 20px;padding:18px 22px;border-radius:14px;background:var(--soft)}
.prose .pj-credits h2{font:800 18px var(--head);margin:0 0 8px}
.prose .pj-credits ul{margin:0;padding:0;list-style:none}
.prose .pj-credits li{margin:0;padding:3px 0}
.pj-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:22px 18px}
.prose .pj-card,.pj-card{display:flex;flex-direction:column;text-decoration:none;color:var(--ink)}
.prose .pj-card img,.pj-card img{display:block;width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;border-radius:12px;margin:0 0 10px}
.pj-card-tag{font:600 11.5px var(--head);letter-spacing:.06em;text-transform:uppercase;color:var(--teal-d)}
.pj-card b{font:700 17px/1.3 var(--head);margin:3px 0 2px}
.pj-card-info{font-size:14px;color:var(--ink-2);line-height:1.45}
.pj-card:hover b{text-decoration:underline;text-underline-offset:3px}
.mp-projects,.pj-more{margin-top:36px;padding-top:24px;border-top:1px solid var(--rule)}
.prose .mp-projects h2,.prose .pj-more h2,.mp-projects h2{font:800 24px/1.15 var(--head);margin:0 0 16px}
.pj-mine{margin:0 0 26px}
.prose .pj-mine h2{font:800 20px var(--head);margin:0 0 12px}
/* members and the SDEA edit a published project (members_project.php?edit=, sdea-admin/projects.php?edit=) */
.pj-mine-item{display:flex;flex-direction:column;gap:10px}
.pj-mine-item .btn{align-self:flex-start}
.prose .pj-back{margin:0 0 8px;font:600 14px var(--head)}
.prose .pj-back a{text-decoration:none}
.pj-edit-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;clear:both;margin:0 0 8px}
.pj-edit-ph{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px var(--rule)}
.prose .pj-edit-ph img{display:block;width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;border-radius:9px;margin:0}
.upd .pj-edit-ph input[type=text]{padding:8px 10px;font-size:15px}
.pj-opts{display:flex;flex-wrap:wrap;gap:6px 16px}
.upd .pj-opts label{display:inline-flex;align-items:center;gap:6px;margin:0;font:500 14px var(--sans);cursor:pointer}
.upd .pj-opts label.pj-rm{color:#a3172a}
.pj-edit-ph:has(.pj-rm input:checked){box-shadow:inset 0 0 0 2px #a3172a;background:#fdf1f2}
.pj-edit-ph:has(.pj-rm input:checked) img{opacity:.35}
.prose .upd h3.pj-add-h{clear:both;font:800 16px var(--head);margin:22px 0 4px}
.pj-down{margin:30px 0 0;padding:18px 22px;border-radius:16px;box-shadow:inset 0 0 0 1.5px #f1c3c9}
.prose .pj-down h2{font:800 18px var(--head);margin:0 0 6px}
.prose .pj-down p{margin:0 0 14px;font-size:15px;color:var(--ink-2)}
.btn.pj-down-btn{background:#fff;color:#a3172a;box-shadow:inset 0 0 0 2px #a3172a}
.btn.pj-down-btn:hover{background:#a3172a;color:#fff}
.adm-list .pj-edit-link{margin-left:10px;font:600 14px var(--sans)}
.pj-who .pj-logo{display:block;margin:0 0 12px}
.pj-who .pj-logo img{display:block;max-width:180px;max-height:80px;width:auto;height:auto}
.pj-who-more{margin:12px 0 0;font-size:14px}
.upd select,.upd input[type=month]{display:block;width:100%;border:1.5px solid #cfd2d6;border-radius:10px;padding:10px 12px;font:16px var(--sans);background:#fff}
.upd label.pj-check{display:flex;gap:12px;align-items:flex-start;clear:both;font:500 15px/1.5 var(--sans)}
.pj-check input{width:20px;height:20px;flex:none;margin:2px 0 0;accent-color:var(--teal-d)}
.pj-adm label{display:block;font:600 13px var(--head);margin:0}
.pj-adm input[type=text],.pj-adm input[type=url],.pj-adm input[type=month],.pj-adm select,.pj-adm textarea{display:block;width:100%;box-sizing:border-box;border:1.5px solid #cfd2d6;border-radius:8px;padding:8px 10px;font:15px var(--sans);background:#fff;margin:4px 0 14px}
.pj-adm-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.pj-adm-grid .full{grid-column:1/-1}
.pj-adm .pj-adm-photo{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center}
.pj-adm .pj-adm-photo label{display:inline-flex;gap:6px;align-items:center;font:500 14px var(--sans)}
.pj-adm .pj-adm-photo input[type=text]{flex:1 1 240px;margin:0}
@media (max-width:800px){.pj-adm-grid{grid-template-columns:1fr}}
@media (max-width:700px){.pg-filter{flex-wrap:nowrap;overflow-x:auto;margin-left:-16px;margin-right:-16px;padding:0 16px 4px;scrollbar-width:none}.pg-filter button{flex:0 0 auto}.pg-grid{grid-template-columns:1fr 1fr;gap:20px 12px}.pg-item b{font-size:14px}.pg-item figcaption{font-size:13px}}
/* events archive */
.archive-note{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;margin:22px 0 0;padding:14px 18px;border-radius:12px;background:#fff6dd;border-left:6px solid #f4b400;font-size:15px;line-height:1.5;color:var(--ink)}
.archive-note b{font:700 14px var(--head);text-transform:uppercase;letter-spacing:.05em;color:#7a5600}
.archive-note a{color:var(--ink);font-weight:600}
.ev-more{margin:22px 0 0}
.arc-year{margin:34px 0 0}
.arc-year h2{font:800 26px var(--head);margin:0 0 12px;padding-bottom:8px;border-bottom:2px solid var(--ink)}
.arc-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.arc-list a{display:block;height:100%;box-sizing:border-box;padding:14px 18px;border-radius:12px;background:var(--soft);text-decoration:none;color:var(--ink-2)}
.arc-list a:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.arc-list b{display:block;font:700 16px/1.35 var(--head);color:var(--ink);margin-bottom:2px}
.arc-list span{font-size:14px}
/* members A to Z bar (viewmembers.php) */
.az-bar{display:flex;flex-wrap:wrap;gap:5px;margin:4px 0 22px}
.prose .az-bar a,.az-bar span{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 9px;box-sizing:border-box;border-radius:8px;font:700 14px var(--head);text-decoration:none}
.prose .az-bar a{background:var(--soft);color:var(--ink)}
.prose .az-bar a:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.prose .az-bar a[aria-current]{background:var(--ink);color:#fff}
.az-bar span{color:#b8b8bd;background:transparent}
.prose .az-h{margin:0 0 14px}
@media (max-width:700px){.prose .az-bar a,.az-bar span{min-width:32px;height:34px;padding:0 6px;font-size:13px}}

/* Creative Retail Awards 2026 winners page: SDEA members among the winners; highly commended badge */
.win-members{grid-template-columns:repeat(4,minmax(0,1fr))}
.win-members li{line-height:1.55}
.win-members .mw,.win-members .mh{display:inline-block;margin-right:6px;font:700 11px var(--head);text-transform:uppercase;letter-spacing:.06em}
.win-members .mw{color:#8a5a00}
.win-members .mh{color:var(--muted)}
@media (max-width:1000px){.win-members{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.win-members{grid-template-columns:minmax(0,1fr)}}
.badge.b-hc{color:#1f3b63;background:#e8f0fb;box-shadow:inset 0 0 0 1px #c3d6f0}
.badge.b-hc::before{background:var(--blue)}
.win-big h2 a,.win-card h3 a{color:inherit;text-decoration:none}
.win-big h2 a:hover,.win-card h3 a:hover{text-decoration:underline}
/* SDEA admin home: every tool in groups */
.adm-group{margin:30px 0 0}
.adm-group>h2{font:800 22px var(--head);margin:0 0 6px;padding-bottom:8px;border-bottom:2px solid var(--ink)}
.adm-group .adm-note{margin:0 0 14px}
.adm-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:12px 0 0}
.adm-links form{margin:0;display:flex}
.prose .adm-links a,.adm-links button{display:block;width:100%;box-sizing:border-box;text-align:left;padding:16px 18px;border:0;border-radius:14px;background:var(--soft);color:var(--ink-2);text-decoration:none;font:14px/1.45 var(--sans);cursor:pointer}
.prose .adm-links a:hover,.adm-links button:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.adm-links b{display:block;font:700 16px/1.3 var(--head);color:var(--ink);margin-bottom:4px}
.adm-group .adm-sub{margin:12px 0 0}

/* ---------- Edit your entry (members_edit.php) ---------- */
.upd input[type=email]{display:block;width:100%;border:1.5px solid #cfd2d6;border-radius:10px;padding:10px 12px;font:16px var(--sans);background:#fff}
.ed .enq,.ed fieldset>label,.ed .ed-help{clear:both}
.ed .ed-wide{grid-column:1/-1}
.ed .enq label small{font-weight:400;color:var(--muted)}
.ed textarea{margin-bottom:16px}
.ed .ed-q{margin:4px 0 8px;font:600 15px var(--head)}
.ed .ed-ticks{display:flex;flex-wrap:wrap;gap:10px 28px;margin:0}
.ed .ed-ticks label,.ed .ed-subs label,.ed label.ed-main{display:flex;align-items:flex-start;gap:9px;margin:0;font:500 15px var(--sans);cursor:pointer}
.ed input[type=checkbox]{width:18px;height:18px;margin:2px 0 0;flex:none;accent-color:var(--teal)}
.ed .ed-help{margin:0 0 4px}
.ed .ed-fam{margin:22px 0 10px;font:800 17px var(--head)}
.ed .ed-cat{margin:0 0 8px;padding:12px 16px;border-radius:12px;background:#fff}
.ed label.ed-main{font:600 15px var(--head)}
.ed .ed-subs{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px 20px;margin:12px 0 2px 27px}
.ed .ed-subs label{font:400 14px var(--sans)}
.ed .ed-cat.js:not(.on) .ed-subs{display:none}
.ed .ed-save{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:8px}
/* the SDEA checks a member's changes (sdea-admin/entry.php) */
.er-wrap{overflow-x:auto}
.er-table th:first-child{width:150px}
.er-table td{width:42%;vertical-align:top;overflow-wrap:anywhere}
.er-table td.er-new{background:#eef8f6}
.er-act{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:6px 0 30px}
@media (max-width:640px){.er-table th:first-child{width:auto}.er-table td{width:auto}.er-table tr.er-head{display:none}.er-table td::before{content:attr(data-l);display:block;margin:0 0 2px;font:700 12px var(--head);color:var(--muted)}}
@media (max-width:600px){.ed .ed-subs{grid-template-columns:minmax(0,1fr);margin-left:4px}}

/* ---------- Member benefits (members_benefits.php and its pages) ---------- */
.bn-list{display:grid;gap:12px;margin:22px 0 26px}
.bn-item{display:flex;gap:18px;align-items:flex-start;padding:16px;border-radius:14px;background:var(--soft);text-decoration:none;color:var(--ink-2);font-size:15px;line-height:1.5}
.bn-item img{flex:none;width:100px;height:75px;border-radius:8px;object-fit:cover}
.bn-item b{display:block;font:700 17px var(--head);color:var(--ink);margin-bottom:2px}
.bn-item em{display:block;font-style:normal;font-weight:600;color:var(--teal-d);margin-bottom:4px}
.bn-item u{text-decoration:underline;color:var(--ink);font-weight:600;white-space:nowrap}
.bn-item:hover{background:#eef8f6}
.bn-page .eyebrow a{color:inherit;text-decoration:none}
.bn-banner img{display:block;width:100%;max-width:560px;height:auto;border-radius:10px}
.bn-pic{float:right;width:200px;height:auto;margin:4px 0 12px 20px;border-radius:10px}
.bn-contacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:8px 0 20px}
.bn-contacts>div{padding:16px 18px;border-radius:14px;background:var(--soft)}
.bn-contacts h2{margin:0 0 2px;font-size:18px}
.bn-contacts p{margin:0 0 6px;overflow-wrap:anywhere}
.bn-back{clear:both;margin-top:26px;font-weight:600}
@media (max-width:600px){.bn-item{gap:12px;padding:14px}.bn-item img{width:72px;height:54px}.bn-contacts{grid-template-columns:minmax(0,1fr)}.bn-pic{width:120px;margin-left:12px}}

/* ---------- Directory forms (members_directory.php, members_directory_advert.php) and the Download Centre ---------- */
.dirf .ed-help{margin:0 0 12px}
.dirf fieldset>*:not(legend){clear:both}
.dirf .df-size,.dirf .df-special label,.dirf .df-yn label{font:500 15px var(--sans);margin:0}
.dirf .df-size .n{font-weight:600}
.df-count{margin:-8px 0 14px;font-size:13px;color:var(--muted)}
.df-count.over{color:#b4232a;font-weight:600}
.df-yn p{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:0 0 8px}
.df-yn span{min-width:250px;font-weight:600}
.df-yn label,.df-special label,.df-size{display:inline-flex;align-items:center;gap:8px;margin:0;font:500 15px var(--sans)}
.dirf input[type=radio]{width:18px;height:18px;margin:0;flex:none;accent-color:var(--teal)}
.df-logo{margin-top:18px;padding:16px 18px;border-radius:12px;background:#fff}
.df-imp{color:#b4232a;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.df-logo-now{display:flex;align-items:center;gap:12px;margin:0 0 12px;font-size:14px;color:var(--muted)}
.df-logo-now img{max-width:150px;max-height:60px;padding:6px;border-radius:8px;background:var(--soft)}
.dirf input[type=file]{display:block;width:100%;margin:4px 0 10px;padding:10px;border:1px dashed var(--rule);border-radius:10px;background:#fff;font-size:14px}
.df-total{margin:0;padding:12px 16px;border-radius:10px;background:#fff;font-weight:600}
.df-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px}
.df-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-radius:10px;background:#fff}
.df-row.on{background:#eef8f6}
.df-row label{display:flex;align-items:center;gap:9px;margin:0;font:500 15px var(--sans)}
.df-row .df-hl{flex:none;font-size:13px;color:var(--muted)}
.df-row .df-hl input:disabled+*,.df-row:not(.on) .df-hl{opacity:.45}
.df-tn{grid-template-columns:repeat(2,minmax(0,1fr))}
.df-sizes{display:grid;gap:6px;margin:0 0 14px}
.df-size{display:grid!important;grid-template-columns:22px minmax(0,1fr) 70px 170px;padding:10px 14px;border-radius:10px;background:#fff;cursor:pointer}
.df-size .p{font-weight:700;text-align:right}
.df-size .d{font-size:13px;color:var(--muted);text-align:right}
.df-size.sold{opacity:.55;cursor:default}
.df-special{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 8px}
.df-special input[type=text]{flex:1 1 260px;width:auto}
.df-show{display:flex;gap:22px;align-items:flex-start;margin:0 0 10px}
.df-show>div{flex:1}
.df-show figure{flex:none;width:170px;margin:0}
.df-show figure img{display:block;width:100%;height:auto;border-radius:6px;box-shadow:0 1px 6px rgba(0,0,0,.15)}
.df-show figcaption{margin-top:4px;font-size:12px;color:var(--muted);text-align:center}
.df-quote{margin:0 0 6px;font:600 17px var(--head)}
.dirf select{max-width:260px}
.df-sc{margin:10px 0;padding:12px 16px;border-radius:12px;background:#fff}
.df-sc .ed-q{margin:0 0 6px}
.df-sum{margin:6px 0 10px;padding:16px 18px;border-radius:14px;background:#eef8f6}
.df-sum h2{margin:0 0 8px;font-size:18px}
.df-sum p{margin:0}
.df-sum table{width:100%;border-collapse:collapse;font-size:15px}
.df-sum td{padding:4px 0;border-bottom:1px solid rgba(0,0,0,.08)}
.df-sum td+td{text-align:right;white-space:nowrap}
.df-sum tr.t td{border-bottom:0;padding-top:8px;font-weight:700}
.dl-logos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 24px}
.dl-logos a{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:var(--soft);text-decoration:none;color:var(--ink-2);font-size:14px}
.dl-logos a:hover{background:#eef8f6}
.dl-logos img{flex:none;background:#fff;border-radius:6px;padding:4px}
.dl-logos b{display:block;font:700 15px var(--head);color:var(--ink)}
.df-files{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}
.df-file{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:var(--soft);font-size:14px}
.df-file img{max-width:140px;max-height:110px;border-radius:6px;background:#fff}
.df-file p{margin:0}
.df-text{white-space:pre-wrap;font:14px/1.55 var(--sans);padding:16px 18px;border-radius:12px;background:var(--soft)}
.adm-table tr.df-old td{opacity:.6}
@media (max-width:700px){.df-list,.df-tn,.dl-logos{grid-template-columns:minmax(0,1fr)}.df-size{grid-template-columns:22px minmax(0,1fr) 64px}.df-size .d{grid-column:2/-1;text-align:left}.df-show{flex-direction:column-reverse}.df-show figure{width:150px}.df-yn span{min-width:0;width:100%}}

/* ---------- Members' home: profile completeness ---------- */
.pf{margin:0 0 26px;padding:20px 22px;border-radius:16px;background:var(--soft)}
.pf-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.pf-head h2{margin:0;font-size:20px}
.pf-head span{font:700 14px var(--head);color:var(--teal-d);white-space:nowrap}
.pf-bar{height:12px;margin:12px 0 14px;border-radius:99px;background:#fff;overflow:hidden;box-shadow:inset 0 0 0 1px var(--rule)}
.pf-bar span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--teal),#3e93cd)}
.pf-lede{margin:0 0 8px;font-weight:600}
.pf-todo{margin:0 0 12px;padding:0;list-style:none;display:grid;gap:6px}
.pf-todo li{padding:9px 12px;border-radius:10px;background:#fff;font-size:15px}
.pf-todo a{font-weight:700}
.pf-todo small{display:block;color:var(--muted);font-size:13px}
.pf-done{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.pf-done span{padding:3px 10px 3px 24px;border-radius:99px;background:#e3f4ef;color:var(--teal-d);font:600 12px var(--head);position:relative}
.pf-done span:before{content:"";position:absolute;left:10px;top:50%;width:5px;height:9px;margin-top:-6px;border:solid var(--teal-d);border-width:0 2px 2px 0;transform:rotate(45deg)}
/* ---------- members' forms: Additional membership cards, Contact us ---------- */
.mf fieldset>*:not(legend){clear:both}
.mf-people p{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 8px}
.mf-head span{font:600 13px var(--head)}
/* ---------- Site map ---------- */
.sm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:22px 0 30px}
.sm-group{padding:16px 18px;border-radius:14px;background:var(--soft)}
.sm-group h2{margin:0 0 8px;font-size:18px}
.sm-group h2 a,.sm-sup h2 a{color:var(--ink);text-decoration:none}
.sm-group ul,.sm-fams ul{margin:0;padding:0;list-style:none}
.sm-group li,.sm-fams li{margin:0 0 5px;font-size:15px}
.sm-note{margin:-4px 0 6px;font-size:13px;color:var(--muted)}
.sm-fams{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px 24px}
.sm-fams h3{margin:10px 0 6px;font-size:15px}
@media (max-width:600px){.mf-people p{grid-template-columns:minmax(0,1fr)}.mf-head{display:none!important}}

/* ---------- 103 KCR co-working booking (members_kcr.php, sdea-admin/kcr.php) ---------- */
.kcr-rules{display:flex;flex-wrap:wrap;gap:6px 8px;margin:0 0 20px;padding:0;list-style:none}
.kcr-rules li{padding:5px 12px;border-radius:99px;background:var(--soft);font:600 13px var(--head)}
.kcr-cal{margin:0 0 22px;padding:18px 20px;border-radius:16px;background:var(--soft)}
.kcr-month{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 10px}
.kcr-month h2{margin:0;font-size:20px}
.kcr-month p{display:flex;gap:16px;margin:0;font-weight:600}
.kcr-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.kcr-dow{font:700 12px var(--head);color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.04em}
.kcr-day{position:relative;display:flex;flex-direction:column;min-height:68px;padding:8px 9px;border-radius:10px;background:#fff;text-decoration:none;color:var(--ink);font-size:13px;line-height:1.25}
.kcr-day b{font:700 16px var(--head)}
.kcr-day small{color:var(--teal-d);font-weight:600}
.kcr-day i{margin-top:auto;font-style:normal;font-size:12px;font-weight:700;color:#3e93cd}
a.kcr-day:hover{box-shadow:inset 0 0 0 2px var(--teal)}
.kcr-day.sel{box-shadow:inset 0 0 0 2px var(--ink)}
.kcr-day.shut{background:transparent;color:#9aa0a6}
.kcr-day.shut small{color:#9aa0a6;font-weight:500}
.kcr-day.full small{color:#b4232a}
.kcr-day.blank{background:transparent}
.kcr-dayp{margin:0 0 24px}
.kcr-dayp h2{margin:0 0 10px}
.kcr-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:5px;margin:0 0 16px}
.kcr-slot{display:flex;flex-direction:column;padding:6px 8px;border-radius:8px;background:#e3f4ef;font-size:12px;line-height:1.3}
.kcr-slot b{font:700 13px var(--head)}
.kcr-slot.f1,.kcr-slot.f2{background:#fdf1d8}
.kcr-slot.f0{background:#fbe1e3;color:#8a1c24}
.kcr-slot.pick{box-shadow:inset 0 0 0 2px var(--ink)}
.kcr-check{margin:4px 0 0;font-weight:600}
.kcr-check.ok{color:var(--teal-d)}
.kcr-check.no{color:#b4232a}
.kcr-form fieldset>*:not(legend){clear:both}
.kcr-pick{padding:14px 18px;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 1px var(--rule)}
.kcr-mine h2{margin:26px 0 10px}
.kcr-list{margin:0 0 14px;padding:0;list-style:none;display:grid;gap:8px}
.kcr-list li{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 16px;border-radius:12px;background:var(--soft)}
.prose .kcr-rules,.prose .kcr-list{padding-left:0}
.kcr-acts{display:flex;align-items:center;gap:14px}
.kcr-acts form{margin:0}
.kcr-aday h3{margin:22px 0 6px}
.kcr-aday h3 small{font:500 14px var(--sans);color:var(--muted)}
.kcr-set textarea{width:100%}
.kcr-set fieldset>*:not(legend){clear:both}
@media (max-width:600px){.kcr-cal{padding:14px 10px}.kcr-grid{gap:4px}.kcr-day{min-height:58px;padding:6px}.kcr-day small{font-size:11px}.kcr-day b{font-size:14px}}
/* ---------- 103 KCR bookings calendar: the SDEA (sdea-admin/kcr.php) and the host (members_kcr_host.php) ---------- */
.btn.sm{min-height:34px;padding:0 14px;font-size:13px}
.kcr-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin:0 0 16px}
.kcr-views{display:flex;gap:4px;padding:4px;border-radius:999px;background:var(--soft)}
.kcr-views a{padding:7px 16px;border-radius:999px;font:600 14px var(--head);color:var(--ink);text-decoration:none}
.kcr-views a:hover{background:#fff}
.kcr-views a[aria-current]{background:var(--ink);color:#fff}
.kcr-step{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.prose .kcr-step h2{margin:0 4px;font-size:20px}
.kcr-step a{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 10px;border-radius:999px;box-shadow:inset 0 0 0 1.5px #cfd2d6;font:700 18px var(--head);color:var(--ink);text-decoration:none}
.kcr-step a.kcr-now{font-size:13px;padding:0 14px}
.kcr-step a:hover{box-shadow:inset 0 0 0 2px var(--ink);color:var(--ink)}
.prose .kcr-tools{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.kcr-tools .btn{min-height:40px;padding:0 18px;font-size:14px}
/* week: Monday to Friday by the half hour */
.kcr-wk{--h:30px;display:grid;grid-template-columns:52px repeat(5,minmax(0,1fr));column-gap:6px;margin:0 0 10px;padding:12px 12px 14px 6px;border-radius:16px;background:var(--soft)}
.kcr-tl{grid-column:1;font:600 11px/1 var(--head);color:var(--muted);text-align:right;padding:0 2px 0 0;transform:translateY(-5px);white-space:nowrap}
.kcr-tl.half{font-weight:500;color:#9a9ea4}
.kcr-wh{position:relative;min-width:0;padding:6px 6px 10px;font-size:12px;line-height:1.35;color:var(--ink-2)}
.kcr-wh b{font:700 15px var(--head);color:var(--ink)}
.kcr-wh small{font:600 12px var(--head);color:var(--muted)}
.kcr-wh span{display:block;margin-top:2px;padding-right:44px}
.kcr-wh.today b,.kcr-wh.today small{color:var(--teal-d)}
.kcr-wh.shut span{color:#b4232a;font-weight:600}
.kcr-plus{position:absolute;top:4px;right:2px;padding:3px 9px;border-radius:99px;background:#fff;font:700 12px var(--head);color:var(--teal-d);text-decoration:none;box-shadow:inset 0 0 0 1px var(--rule)}
.kcr-plus:hover{background:var(--teal);color:#05291f}
.kcr-wd{display:grid;column-gap:3px;min-width:0;border-radius:10px;background:#fff;overflow:hidden}
.kcr-wd.today{box-shadow:inset 0 0 0 2px var(--teal)}
.kcr-wd.shut{background:repeating-linear-gradient(135deg,#eceef0 0 8px,#e4e6e9 8px 16px)}
.kcr-wd.past{background:#f9fafa}
.kcr-wd.past .kcr-bk{opacity:.7}
.kcr-occ{grid-column:1}
.kcr-occ.o1{background:#7fd3b9}
.kcr-occ.o2{background:var(--amber)}
.kcr-occ.o3{background:#d63a45}
.kcr-free{grid-column:3/-1;border-top:1px dashed #eceef0;text-decoration:none}
.kcr-free.hr{border-top:1px solid #e1e3e6}
a.kcr-free:hover{background:var(--teal-l)}
.kcr-bk{position:relative;z-index:1;display:block;min-width:0;margin:2px 0 1px;padding:3px 6px 3px 8px;border-radius:6px;background:var(--blue-l);box-shadow:inset 3px 0 0 var(--blue-d);color:var(--ink);text-decoration:none;font-size:12px;line-height:1.25;overflow:hidden}
.kcr-bk b,.kcr-bk span,.kcr-bk small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kcr-bk b{font:700 12px var(--head)}
.kcr-bk span{font-weight:600}
.kcr-bk small{font-size:11px;color:var(--ink-2)}
.kcr-bk:hover{background:#d3e6f5;color:var(--ink)}
.kcr-bk.sel{background:#d3e6f5;box-shadow:inset 3px 0 0 var(--blue-d),inset 0 0 0 2px var(--ink)}
.kcr-bk.clash{background:#fbe1e3;box-shadow:inset 3px 0 0 #b4232a}
.kcr-none{display:none}
.prose .kcr-key{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 26px;font-size:13px;color:var(--ink-2)}
.kcr-key span{display:inline-flex;align-items:center;gap:6px}
.kcr-key i{display:inline-block;width:6px;height:16px;border-radius:2px}
.kcr-key i.o1{background:#7fd3b9}.kcr-key i.o2{background:var(--amber)}.kcr-key i.o3{background:#d63a45}
/* month */
.kcr-mo{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0 0 26px;padding:14px;border-radius:16px;background:var(--soft)}
.kcr-md{min-width:0;min-height:120px;padding:7px 8px;border-radius:10px;background:#fff;font-size:12px;line-height:1.3}
.kcr-md.blank{background:transparent}
.kcr-md.shut{background:repeating-linear-gradient(135deg,#eceef0 0 8px,#e4e6e9 8px 16px)}
.kcr-md.today{box-shadow:inset 0 0 0 2px var(--teal)}
.kcr-md.past{background:#f9fafa}
.prose .kcr-mdh{display:flex;align-items:baseline;justify-content:space-between;gap:6px;margin:0 0 5px}
.kcr-mdh a{font:700 15px var(--head);color:var(--ink);text-decoration:none}
.kcr-mdh a:hover{color:var(--blue-d);text-decoration:underline}
.kcr-mdh small{font-weight:600;color:var(--muted);text-align:right}
.kcr-md.shut .kcr-mdh small{color:#b4232a}
.prose .kcr-md ul{margin:0;padding:0;list-style:none}
.prose .kcr-md li{margin:0 0 3px;padding:0}
.kcr-md li a{display:block;padding:2px 6px;border-radius:5px;background:var(--blue-l);color:var(--ink);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kcr-md li a:hover{background:#d3e6f5}
.kcr-md li a.clash{background:#fbe1e3}
.kcr-md li i{font-style:normal;font-weight:700;color:var(--blue-d)}
.kcr-md li.more a{background:none;padding:0 6px;font-weight:600;color:var(--blue-d)}
.kcr-mdn{display:none}
/* list, details, add, closed days */
.kcr-red{font:600 14px var(--sans);color:#b4232a}
.kcr-detail{position:relative;margin:0 0 22px;padding:18px 22px 20px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 2px var(--ink)}
.kcr-detail.off{box-shadow:inset 0 0 0 2px var(--rule)}
.prose .kcr-detail h2{margin:0 0 12px;padding-right:60px;font-size:22px}
.kcr-detail h2 small{margin-left:6px;padding:3px 10px;border-radius:99px;background:var(--teal-l);color:#0a5a47;font:600 13px var(--head);vertical-align:middle}
.kcr-detail.off h2 small{background:#fde8ea;color:#a3172a}
.kcr-dx{position:absolute;top:18px;right:22px;font:600 14px var(--head)}
.prose .kcr-dl{display:grid;grid-template-columns:100px minmax(0,1fr);gap:7px 16px;margin:0 0 14px;font-size:15px;line-height:1.45}
.kcr-dl dt{padding-top:2px;font:600 13px var(--head);color:var(--muted)}
.prose .kcr-dl dd{margin:0;min-width:0;overflow-wrap:anywhere}
.kcr-cx{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:0}
.kcr-cx label{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}
.kcr-add{margin:0 0 26px}
.prose .kcr-add h2{margin:0 0 10px}
.kcr-shut{margin:30px 0 26px}
.prose .kcr-shutl{display:grid;gap:6px;margin:0 0 16px;padding:0;list-style:none}
.prose .kcr-shutl li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin:0;padding:8px 8px 8px 16px;border-radius:12px;background:var(--soft);font-weight:500}
.kcr-shutl form{margin:0}
.kcr-shutf fieldset>*:not(legend){clear:both}
.kcr-shutf .ed-save{margin-bottom:0}
@media (max-width:760px){
  .kcr-bar{align-items:flex-start}
  .kcr-wk{display:block;padding:8px}
  .kcr-tl,.kcr-occ,.kcr-free,.kcr-wd.empty{display:none}
  .kcr-wh{padding:10px 6px 6px}
  .kcr-wh span{display:inline;margin-left:4px;padding-right:0}
  .kcr-wd{display:flex;flex-direction:column;gap:5px;margin:0 0 6px;padding:6px}
  .kcr-wd.today{box-shadow:inset 0 0 0 2px var(--teal)}
  .kcr-bk{margin:0;padding:7px 10px 7px 12px;font-size:13px}
  .kcr-bk b,.kcr-bk span,.kcr-bk small{white-space:normal}
  .kcr-mo{gap:4px;padding:8px}
  .kcr-md{min-height:58px;padding:6px}
  .prose .kcr-md ul,.kcr-md:not(.shut) .kcr-mdh small{display:none}
  .kcr-md.shut .kcr-mdh{flex-direction:column}
  .kcr-md.shut .kcr-mdh small{font-size:10px;text-align:left}
  .prose .kcr-mdn{display:block;margin:2px 0 0;font-weight:700}
  .kcr-mdn a{text-decoration:none}
  .prose .kcr-dl{grid-template-columns:1fr;gap:2px}
  .kcr-dl dt{padding-top:8px}
  .kcr-detail{padding:16px}
  .kcr-dx{top:16px;right:16px}
}
@media print{
  .kcr-views,.kcr-tools,.kcr-plus,.kcr-add,.kcr-shut form,.kcr-cx,.kcr-dx,.adm-nav,.kcr-key span:last-child{display:none!important}
  .kcr-wk,.kcr-mo{background:none;padding:0}
}
/* 103 KCR meeting room (members_kcr.php form and slots; the calendars' room strip) */
.kcr-slot i{font-style:normal;font-size:11px;font-weight:700;color:var(--magenta-d)}
.kcr-slot.pick.rpick{box-shadow:inset 0 0 0 2px var(--ink),inset 0 0 0 4px var(--magenta)}
.kcr-mr{padding:12px 14px;border-radius:10px;background:#fff;box-shadow:inset 0 0 0 1.5px #ecd2e0}
.ed .kcr-mr label.kcr-mr-tick{display:flex;align-items:flex-start;gap:9px;margin:0;font:600 15px var(--sans);cursor:pointer}
.kcr-mr-tick input{flex:none;margin-top:4px}
.kcr-mr-tick small{font-weight:400;color:var(--muted)}
.kcr-mr-times{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;margin-top:12px}
.kcr-mr .ed-help{margin:0}
.kcr-mrs{grid-column:2}
.kcr-mrs.on{background:var(--magenta)}
.kcr-wh .kcr-wh-mr{color:var(--magenta-d);font-weight:600}
.kcr-bk em{display:block;font-style:normal;font-size:11px;font-weight:700;color:var(--magenta-d);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kcr-key i.mr{background:var(--magenta)}
.kcr-md li em{font-style:normal;font-size:11px;font-weight:700;color:var(--magenta-d)}
.kcr-set .ed-ticks{margin:0 0 14px}
.kcr-set .enq+.ed-help{margin-top:10px}
@media (max-width:760px){.kcr-mrs,.kcr-key{display:none}.kcr-bk em{white-space:normal}}
@media (max-width:600px){.kcr-mr-times{grid-template-columns:1fr 1fr;gap:10px}}
/* ---------- Admin log-ins (sdea-admin/admins.php) ---------- */
.au-table td{vertical-align:middle}
.au-acts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.au-acts form{margin:0}
.au-add{margin-top:26px}
.au-add fieldset>*:not(legend){clear:both}
.login-box input[readonly]{background:var(--soft);color:var(--ink-2)}
/* ---------- Mailing list and sending the newsletter (sdea-admin/subscribers.php, nl-send.php; newsletter pages) ---------- */
.ml-check{padding:4px 0 0}
.prose .ml-sum{margin:10px 0 14px;padding:0;list-style:none;display:grid;gap:4px}
.prose .ml-sum li{margin:0}
.ml-go{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0}
.ml-filter{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end;margin:0 0 14px}
.ml-filter label{display:grid;gap:4px;font:600 13px var(--head)}
.ml-filter input,.ml-filter select{padding:8px 10px;border-radius:8px;border:1.5px solid #cfd2d6;font:15px var(--sans);background:#fff}
.ml-filter .ml-csv{margin-left:auto;font-weight:600}
.ml-table td{vertical-align:middle}
.ml-acts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.ml-acts form{margin:0}
.ml-st{display:inline-block;padding:2px 9px;border-radius:99px;background:var(--soft);font:600 12px var(--head);white-space:nowrap}
.ml-st.subscribed{background:var(--teal-l);color:#0a5a47}
.ml-st.pending{background:var(--amber-l);color:#7a4b00}
.ml-st.unsubscribed,.ml-st.bounced{background:#fde8ea;color:#a3172a}
.prose .ml-pages{display:flex;flex-wrap:wrap;gap:6px 10px;margin:12px 0 0}
.ml-bounce textarea{width:100%;border:1.5px solid #cfd2d6;border-radius:10px;padding:10px 12px;font:15px var(--sans)}
.nl-prog{margin:0;font:700 17px var(--head)}
.nl-bar{height:14px;margin:12px 0 10px;border-radius:99px;background:#e6e8eb;overflow:hidden}
.nl-bar i{display:block;height:100%;width:0;background:var(--teal);transition:width .4s}
.adm-cards.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.adm-cards>div{display:block;padding:18px;border-radius:14px;background:var(--soft);color:var(--ink-2);font-size:14px}
.adm-cards>div b{display:block;font:800 32px var(--head);color:var(--ink)}
.nl-sendbox{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.nl-sendbox p{margin:0}
.nl-signup{margin:0 0 10px}
.nl-again button{margin-left:8px}
@media (max-width:760px){.adm-cards.three{grid-template-columns:1fr}.ml-filter .ml-csv{margin-left:0}}
/* ---------- Members' entries (sdea-admin/member.php) ---------- */
.prose .mb-back{margin:0 0 4px;font-weight:600}
.mb-tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 6px}
.mb-tools input{flex:1;min-width:240px;padding:12px 14px;border-radius:10px;border:1.5px solid #cfd2d6;font:16px var(--sans)}
.mb-tools input:focus{outline:none;border-color:var(--teal-d);box-shadow:0 0 0 3px rgba(34,180,145,.2)}
.mb-table td{vertical-align:middle}
.mb-table .ml-st{margin-left:6px;text-decoration:none}
.mb-form fieldset>*:not(legend){clear:both}
.mb-pic img{display:block;max-width:220px;margin:14px 0 8px;border-radius:8px;box-shadow:0 0 0 1px var(--rule)}
.mb-danger{box-shadow:inset 0 0 0 1.5px #f2c6cb}
.mb-catfind{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:6px 0 4px}
.mb-catfind input{flex:1;min-width:240px;padding:10px 12px;border-radius:10px;border:1.5px solid #cfd2d6;font:16px var(--sans);background:#fff}
.ed .ed-cat.js.find .ed-subs{display:grid}
.mb-sure{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.mb-sure label{display:flex;align-items:center;gap:8px;font-weight:600}

/* ---------- 8 Nov 2026 polish ---------- */
/* search results: the member cards use the full column (as on the A to Z) and the brief card sits above them as a banner */
.prose table.legacy:has(.res-brief),.prose table.legacy:has(.res-brief)>tbody,.prose table.legacy:has(.res-brief) tr,.prose table.legacy:has(.res-brief) td{display:block;width:auto!important;height:auto!important}
.prose table.legacy:has(.res-brief)>tbody>tr>td,.prose table.legacy:has(.res-brief)>tr>td{padding:0}
.prose table.legacy:has(.res-brief) tr:has(.res-brief){display:flex;flex-direction:column}
.prose table.legacy:has(.res-brief) td:has(.res-brief){order:-1;margin:6px 0 20px}
.prose table.legacy:has(.res-brief) td:has(.res-brief)>div{text-align:left}
.prose table.legacy:has(.res-brief) .res-brief{max-width:none;margin:0}
.prose table.legacy:has(.res-brief) .sdeaBodycopy{margin:0 0 14px}
@media (min-width:700px){
  .prose table.legacy:has(.res-brief) .res-brief{display:grid;grid-template-columns:1fr auto;column-gap:24px;align-items:center;padding:18px 22px}
  .prose table.legacy:has(.res-brief) .res-brief>*{grid-column:1}
  .prose table.legacy:has(.res-brief) .res-brief>.btn{grid-column:2;grid-row:1/span 3;white-space:nowrap}
  .prose table.legacy:has(.res-brief) .res-brief p:last-of-type{margin-bottom:0}
}
/* award badges on phones: one line of text that wraps if it must, not two squashed columns */
@media (max-width:640px){
  .badge{display:inline-block;border-radius:12px;padding:4px 10px;line-height:1.4}
  .badge::before{display:inline-block;margin-right:6px;vertical-align:1px}
  .badge b{margin-right:3px}
}
/* shorter Join pages (8 Nov 2026): compact 103 KCR banner; on phones the work photos and quotes swipe sideways */
.join-kcr.short{grid-template-columns:120px minmax(0,1fr) auto;gap:24px;margin-top:48px;padding:20px 24px!important}
.join-kcr.short .join-kcr-pic img{aspect-ratio:1/1;border-radius:12px}
.join-kcr.short h2{font-size:21px;margin:0 0 6px}
.join-kcr.short p:not(.eyebrow){margin:0}
.join-kcr.short .eyebrow{margin:0 0 4px}
.join-kcr.short .btns{margin:0;align-self:center}
@media (max-width:760px){
  .join-kcr.short{grid-template-columns:72px minmax(0,1fr);gap:14px 16px;padding:18px!important}
  .join-kcr.short .join-kcr-pic img{aspect-ratio:1/1}
  .join-kcr.short .btns{grid-column:1/-1}
  .join-kcr.short h2{font-size:18px}
  .work-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;grid-auto-rows:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch}
  .work-strip a{flex:0 0 74%;height:230px;scroll-snap-align:start}
  .work-strip a:nth-child(2),.work-strip a:nth-child(3){grid-row:auto}
  .join-quotes{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:6px}
  .join-quotes .jq{flex:0 0 86%;scroll-snap-align:start}
  .jq.big blockquote{font-size:19px}
  .join-3{gap:10px}
  .join-3 li{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:14px;padding:16px 18px}
  .join-3 li::before{grid-row:1/span 2;width:32px;height:32px;margin:0;font-size:15px}
  .join-3 b{font-size:16px;margin:0}
  .join-3 span{font-size:14px}
}
/* ---------- Find a supplier (search.php, 8 Nov 2026) ---------- */
.fs-page{max-width:none}
.fs-head{padding:6px 0 4px}
.fs-head h1{font:800 clamp(34px,4.4vw,52px)/1.05 var(--head);letter-spacing:-.02em;margin:0 0 10px}
.fs-head .standfirst{max-width:720px;margin:0 0 22px;color:var(--ink-2);font-size:17px}
.fs-form{margin:0 0 26px}
.fs-q{position:relative;display:flex;max-width:820px;border:2px solid var(--ink);border-radius:16px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.06)}
.fs-q input{flex:1;min-width:0;border:0;background:transparent;padding:0 18px;height:58px;font:400 17px var(--sans);color:var(--ink);border-radius:14px 0 0 14px}
.fs-q input:focus{outline:none}
.fs-q:focus-within{box-shadow:0 0 0 4px var(--teal-l),0 10px 30px rgba(0,0,0,.06)}
.fs-q .btn{border-radius:0 13px 13px 0;min-height:58px;padding:0 28px;font-size:16px}
.fs-sug{position:absolute;z-index:30;left:-2px;right:-2px;top:calc(100% + 6px);margin:0;padding:6px;list-style:none;background:#fff;border:1px solid var(--rule);border-radius:14px;box-shadow:0 16px 40px rgba(0,0,0,.14);max-height:420px;overflow:auto}
.fs-sug[hidden]{display:none}
.fs-sug li{margin:0}
.fs-sug .g{padding:10px 12px 4px;font:600 11.5px var(--head);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.fs-sug a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:9px;color:var(--ink);text-decoration:none;font-size:15px}
.fs-sug a b{font-weight:700}
.fs-sug a small{margin-left:auto;color:var(--muted);font-size:12.5px;white-space:nowrap}
.fs-sug [aria-selected="true"] a,.fs-sug a:hover{background:var(--teal-l)}
.fs-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 16px;max-width:1100px;margin-top:16px}
.fs-filters label{display:flex;flex-direction:column;gap:5px;font:600 12.5px var(--head);color:var(--ink-2)}
.fs-filters select{min-width:200px;max-width:280px;height:44px;padding:0 36px 0 12px;border:1px solid #cfcfd4;border-radius:10px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2346464c' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center/16px;-webkit-appearance:none;appearance:none;font:400 15px var(--sans);color:var(--ink)}
.fs-filters .fs-check{flex-direction:row;align-items:center;gap:9px;height:44px;font:500 14.5px var(--sans);color:var(--ink)}
.fs-check input{width:20px;height:20px;accent-color:var(--teal-d)}
.fs-filters .fs-apply{min-height:44px;padding:0 20px;font-size:14px}
.js .fs-filters .fs-apply{display:none}
.fs-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:4px 0 18px;padding-top:18px;border-top:1px solid var(--rule)}
.fs-summary p{margin:0;font:500 16px var(--head)}
.fs-summary p b{font-weight:800}
.fs-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0!important;padding:0!important;list-style:none}
.fs-chips li{margin:0!important}
.fs-chips a{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--ink);color:#fff;text-decoration:none;font:600 13.5px var(--head)}
.fs-chips a span{font-size:16px;line-height:1;opacity:.8}
.fs-chips a:hover{background:var(--teal-d)}
.fs-clear{font:600 13.5px var(--head);color:var(--ink-2)}
.fs-brief{max-width:none;margin:0 0 24px}
@media (min-width:700px){.fs-brief{display:grid;grid-template-columns:1fr auto;column-gap:24px;align-items:center;padding:18px 22px}.fs-brief>*{grid-column:1}.fs-brief>.btn{grid-column:2;grid-row:1/span 3;white-space:nowrap}.fs-brief p:last-of-type{margin-bottom:0}}
.fs-ad{margin:0 0 20px}
.fs-ad img{display:block;max-width:100%;height:auto;border-radius:12px}
.fs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0 0 28px}
.fs-card{display:flex;flex-direction:column;border:1px solid var(--rule);border-radius:16px;overflow:hidden;background:#fff;transition:box-shadow .2s,transform .2s}
.fs-card:hover{box-shadow:0 12px 30px rgba(0,0,0,.08);transform:translateY(-2px)}
.fs-pic{display:block;aspect-ratio:16/10;background:var(--soft);overflow:hidden;text-decoration:none}
.fs-pic img{display:block;width:100%;height:100%;object-fit:cover}
.fs-pic-logo{display:flex;align-items:center;justify-content:center;padding:26px 40px;background:linear-gradient(135deg,#f7f7f8,#eef0f2)}
.fs-pic-logo img{width:auto;height:auto;max-width:78%;max-height:70%;object-fit:contain;mix-blend-mode:multiply}
.fs-pic-logo span{font:800 56px var(--head);color:#c9cbd0}
.fs-body{display:flex;flex-direction:column;flex:1;padding:16px 18px 18px}
.fs-top{display:flex;align-items:center;gap:12px;margin:0 0 6px}
.fs-logo{flex:none;width:52px;height:52px;margin-top:-42px;border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.14);display:flex;align-items:center;justify-content:center;overflow:hidden;align-self:flex-start}
.fs-logo img{max-width:44px;max-height:40px;object-fit:contain}
.fs-card h2{font:700 18px/1.25 var(--head);margin:0}
.fs-card h2 a{color:var(--ink);text-decoration:none}
.fs-card h2 a:hover{text-decoration:underline}
.fs-where{margin:2px 0 0!important;font:600 12px var(--head);letter-spacing:.05em;text-transform:uppercase;color:var(--teal-d)}
.fs-card .badges{margin:6px 0 4px!important}
.fs-desc{margin:6px 0 10px!important;font-size:14.5px;line-height:1.5;color:var(--ink-2)}
.fs-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px!important}
.fs-tags a{display:inline-block;padding:4px 10px;border-radius:999px;background:var(--soft);color:var(--ink-2);text-decoration:none;font:500 12.5px var(--sans)}
.fs-tags a:hover{background:var(--teal-l);color:var(--teal-d)}
.fs-tags.big a{padding:9px 16px;font:600 14.5px var(--head);color:var(--ink);background:#fff;box-shadow:inset 0 0 0 1px var(--rule)}
.fs-tags.big a:hover{box-shadow:inset 0 0 0 1px var(--teal);background:var(--teal-l)}
.fs-act{display:flex;align-items:center;gap:16px;margin:auto 0 0!important}
.btn.small{min-height:40px;padding:0 16px;font-size:14px}
.fs-more{font:600 14px var(--head);color:var(--ink)}
.fs-none{padding:28px;border-radius:16px;background:var(--soft);margin:0 0 28px}
.fs-none h2{margin:0 0 10px;font:800 22px var(--head)}
.fs-none ul{margin:0!important}
.fs-pop h2,.fs-browse h2{font:800 24px var(--head);margin:8px 0 12px}
.fs-pop{margin:0 0 26px}
.fs-fams{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.fs-fams h3{font:700 16px var(--head);margin:0 0 8px;padding-top:12px;border-top:3px solid var(--teal)}
.fs-fams div:nth-child(2) h3{border-color:var(--blue,#2f7fc1)}
.fs-fams div:nth-child(3) h3{border-color:var(--red,#e2343f)}
.fs-fams div:nth-child(4) h3{border-color:var(--amber,#f2a516)}
.fs-fams ul{list-style:none;margin:0!important;padding:0!important}
.fs-fams li{margin:0 0 6px!important}
.fs-fams a{color:var(--ink-2);text-decoration:none;font-size:14.5px}
.fs-fams a:hover{color:var(--teal-d);text-decoration:underline}
.fs-az{margin:28px 0 8px;font-size:15px}
@media (max-width:1000px){.fs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fs-fams{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .fs-grid{grid-template-columns:minmax(0,1fr);gap:14px}
  .fs-q input{height:52px;font-size:16px;padding:0 14px}
  .fs-q .btn{min-height:52px;padding:0 18px}
  .fs-filters{gap:10px}
  .fs-filters label:not(.fs-check){flex:1 1 46%}
  .fs-filters select{min-width:0;width:100%;max-width:none}
  .fs-fams{grid-template-columns:minmax(0,1fr)}
  .fs-card .fs-pic{aspect-ratio:16/9}
  .fs-card .fs-pic-logo{aspect-ratio:auto;height:118px;padding:18px 40px}
}
/* ---------- member profile as a portfolio (8 Nov 2026) ---------- */
.mp.mp2{display:block}
.mp2 .mp-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:18px 28px;padding:4px 0 24px;border-bottom:1px solid var(--rule);margin:0 0 26px}
.mp2 .mp-id{display:flex;align-items:center;gap:22px;min-width:0}
.mp2 .mp-logo{flex:none;width:132px;height:96px;margin:0;display:flex;align-items:center;justify-content:center;padding:12px;border-radius:16px;background:#fff;box-shadow:inset 0 0 0 1px var(--rule)}
.mp2 .mp-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.mp2 .mp-name{margin:0;font:800 clamp(28px,3.4vw,42px)/1.1 var(--head);letter-spacing:-.015em}
.mp2 .mp-place{margin:6px 0 0;font:600 13px var(--head);letter-spacing:.05em;text-transform:uppercase;color:var(--teal-d)}
.mp2 .mp-id-text>.badges{margin:10px 0 0!important}
.mp2 .mp-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.mp2 .mp-actions .btn{min-height:46px;padding:0 20px;font-size:14.5px}
.mp2 .btn.line{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink)}
.mp2 .mp-hero{margin:0 0 30px;position:relative}
.mp2 .mp-hero img{display:block;width:100%;max-height:560px;aspect-ratio:16/8;object-fit:cover;border-radius:20px}
.mp2 .mp-hero figcaption{position:absolute;left:18px;bottom:16px;padding:7px 14px;border-radius:999px;background:rgba(0,0,0,.6);color:#fff;font:600 13.5px var(--head)}
.mp2 .mp-hero figcaption a{color:#fff}
.mp2 .mp-cols{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:44px;align-items:start}
.mp2 .mp-main>section{margin:0 0 34px}
.mp2 .mp-main h2{font:800 22px var(--head);margin:0 0 12px}
.mp2 .mp-desc{font-size:16.5px;line-height:1.65;color:var(--ink-2)}
.mp2 .mp-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.mp2 .mp-tags a,.mp2 .mp-tags span{display:inline-block;padding:7px 14px;border-radius:999px;background:var(--teal-l);color:var(--teal-d);text-decoration:none;font:600 13.5px var(--head)}
.mp2 .mp-tags a:hover{background:var(--teal);color:#fff}
.mp2 .mp-subs{margin:0 0 10px;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.mp2 .mp-subs b{display:block;font:700 12.5px var(--head);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 2px}
.mp2 .mp-side{position:sticky;top:20px;display:grid;gap:16px}
.mp2 .mp-card{padding:22px;border-radius:16px;background:var(--soft)}
.mp2 .mp-card h2{font:800 18px var(--head);margin:0 0 10px}
.mp2 .mp-card p{margin:0 0 12px}
.mp2 .mp-addr{font-size:15px;line-height:1.55;color:var(--ink-2)}
.mp2 .mp-contact{margin:0 0 12px!important;padding:0!important;list-style:none;font-size:15px}
.mp2 .mp-contact li{margin:0 0 6px!important;overflow-wrap:anywhere}
.mp2 .mp-contact span{display:inline-block;min-width:66px;font:600 11.5px var(--head);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.mp2 .mp-social{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0!important}
.mp2 .mp-social a{background:#fff}
.mp2 .mp-social a:hover{background:var(--ink);color:#fff}
.mp2 .mp-site a{display:block;position:relative;border-radius:16px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--rule);text-decoration:none;background:#fff}
.mp2 .mp-site img{display:block;width:100%;height:auto;aspect-ratio:295/175;object-fit:cover;object-position:top}
.mp2 .mp-site span{display:block;padding:10px 14px;font:600 13.5px var(--head);color:var(--ink);border-top:1px solid var(--rule)}
.mp2 .mp-brief p{font-size:14.5px;color:var(--ink-2)}
@media (max-width:980px){
  .mp2 .mp-cols{grid-template-columns:minmax(0,1fr);gap:8px}
  .mp2 .mp-side{position:static;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
}
@media (max-width:640px){
  .mp2 .mp-id{gap:14px;align-items:flex-start}
  .mp2 .mp-logo{width:84px;height:64px;padding:8px;border-radius:12px}
  .mp2 .mp-actions{width:100%}
  .mp2 .mp-actions .btn{flex:1 1 auto}
  .mp2 .mp-hero img{aspect-ratio:4/3;border-radius:14px}
  .mp2 .mp-hero{margin:0 -4px 24px}
}
.mp2 .mp-contact{background:none;padding:0!important;gap:6px}
.mp2 .mp-contact li{grid-template-columns:70px minmax(0,1fr);gap:8px}
.mp2 .mp-desc{margin-top:0;font-size:16.5px}
.mp2 .mp-main>section.mp-about,.mp2 .mp-main>section.mp-what{margin-top:0;padding-top:0;border-top:0}
.mp2 .mp-what{padding-top:24px!important;border-top:1px solid var(--rule)!important}
.fs-card .badge{display:inline-block;border-radius:12px;line-height:1.4}
.fs-card .badge::before{display:inline-block;margin-right:6px;vertical-align:1px}
.fs-card .badge b{margin-right:3px}
/* supplier-by-product pages as buyer's guides (8 Nov 2026) */
.cat-guide{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px;align-items:start;margin:0 0 26px}
.cat-guide>p{margin:0!important;font-size:16px;line-height:1.65;color:var(--ink-2)}
.cat-ask{padding:18px 20px;border-radius:14px;background:var(--teal-l)}
.cat-ask h2{font:700 15px var(--head);margin:0 0 8px;color:var(--teal-d)}
.cat-ask ul{margin:0!important;padding-left:1.1em!important}
.cat-ask li{margin:0 0 6px!important;font-size:14.5px;line-height:1.45}
.cat-work{margin:0 0 28px}
.cat-work-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cat-work-strip a{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border-radius:12px;color:#fff;text-decoration:none;background:var(--soft)}
.cat-work-strip img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.cat-work-strip a:hover img{transform:scale(1.04)}
.cat-work-strip span{position:absolute;left:0;right:0;bottom:0;padding:46px 12px 10px;background:linear-gradient(transparent,rgba(0,0,0,.55) 40%,rgba(0,0,0,.8));font-size:12.5px;line-height:1.3;text-shadow:0 1px 2px rgba(0,0,0,.4)}
.cat-work-strip span b{display:block;font:700 14px var(--head)}
.cat-list-h{font:800 22px var(--head);margin:6px 0 8px}
.cat-faq{margin:30px 0 18px}
.cat-faq h2{font:800 22px var(--head);margin:0 0 10px}
.cat-faq details{border-bottom:1px solid var(--rule);padding:12px 0}
.cat-faq summary{cursor:pointer;font:700 16px var(--head)}
.cat-faq details p{margin:10px 0 2px!important;color:var(--ink-2)}
@media (max-width:760px){.cat-guide{grid-template-columns:minmax(0,1fr);gap:16px}.cat-work-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.cat-work-strip a{flex:0 0 72%;scroll-snap-align:start}}
/* Publish (sdea-admin/posts.php) and the pages it makes (post.php), 8 Nov 2026 */
.pa-new{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 22px}
.pa-table td small{color:var(--muted)}
.pa-form{max-width:900px}
.pa-form fieldset{border:1px solid var(--rule);border-radius:12px;padding:14px 16px;margin:14px 0}
.pa-form legend{font:700 15px var(--head);padding:0 6px}
.pa-form legend small,.pa-form label small{font-weight:400;color:var(--muted)}
.pa-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.pa-photo{display:grid;grid-template-columns:140px minmax(0,1fr);gap:14px;align-items:start;margin:0 0 12px}
.pa-photo img{width:140px;height:100px;object-fit:cover;border-radius:8px}
.pa-inline{display:inline-flex!important;align-items:center;gap:8px;margin:6px 16px 6px 0;font-weight:500}
.pa-inline input{width:auto!important}
.pa-members{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:4px 14px;max-height:280px;overflow:auto}
.pa-members label{font-weight:400;font-size:14px}
.pa-delete{margin-top:30px;padding-top:16px;border-top:1px solid var(--rule)}
.post-text h2{font:800 24px var(--head);margin:28px 0 10px}
.post-link{margin:22px 0}
.post-who{margin:30px 0 10px;padding-top:20px;border-top:1px solid var(--rule)}
.post-who h2{font:800 20px var(--head);margin:0 0 12px}
.post-who-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.post-who-list a{display:grid;grid-template-columns:56px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--soft);color:var(--ink);text-decoration:none}
.post-who-list span{grid-row:1/span 2;width:56px;height:40px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:8px}
.post-who-list img{max-width:48px;max-height:34px;object-fit:contain}
.post-who-list b{font:700 14.5px var(--head)}
.post-who-list small{color:var(--muted);font-size:12.5px}
.story-credit{font-size:13px;color:var(--muted)}
/* home: what do you need? photo tiles by product (8 Nov 2026) */
.need{margin-top:64px}
.need-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.need-grid a{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border-radius:16px;background:var(--soft);color:#fff;text-decoration:none}
.need-grid img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s}
.need-grid a:hover img{transform:scale(1.05)}
.need-grid span{position:absolute;left:0;right:0;bottom:0;padding:44px 16px 14px;background:linear-gradient(transparent,rgba(0,0,0,.7));font:700 17px var(--head);text-shadow:0 1px 2px rgba(0,0,0,.4)}
@media (max-width:900px){.need-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.need-grid span{font-size:15px;padding:36px 12px 11px}}

/* ---------- join the SDEA, above the footer of every page (8 Nov 2026) ---------- */
.site-join{margin-top:80px;background:var(--ink);color:#fff}
.site-join+.site-foot{margin-top:0}
.jb-in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 48px;align-items:center;padding-top:34px;padding-bottom:34px}
.jb-k{margin:0 0 6px;font:600 12.5px var(--head);letter-spacing:.08em;text-transform:uppercase;color:#7fdcc4}
.jb-h{margin:0 0 6px;font:800 clamp(22px,2.4vw,28px)/1.2 var(--head);color:#fff}
.jb-s{margin:0;max-width:720px;font-size:15.5px;line-height:1.55;color:#d6d6da}
.jb-act{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.jb-act .btn{min-height:48px;padding:0 24px;font-size:15px;white-space:nowrap}
.jb-more{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;font-size:13.5px}
.jb-more a{color:#d6d6da;text-decoration:underline;text-underline-offset:3px}
.jb-more a:hover{color:#fff}
@media (max-width:760px){.jb-in{grid-template-columns:minmax(0,1fr)}.site-join{margin-top:56px}}

/* ---------- Find a supplier extras (8 Nov 2026) ---------- */
.fs-also{margin:-8px 0 16px;font-size:14px;color:var(--ink-2)}
.fs-none h3{margin:14px 0 8px;font:700 15px var(--head)}
.fs-none .fs-tags{margin:0 0 14px}
.fs-join{margin:16px 0 0;padding:14px 16px;border-radius:12px;background:var(--teal-l);font-size:15px}
.cat-first{margin:-4px 0 22px;padding:14px 16px;border-radius:12px;background:var(--teal-l);font-size:15px}
.cov-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px 20px;margin:4px 0 18px}
.cov-grid label{display:flex;align-items:flex-start;gap:9px;margin:0;font:500 15px var(--sans);cursor:pointer}
.cov-grid input{flex:none;width:18px;height:18px;margin-top:2px;accent-color:var(--teal-d)}
.mp2 .mp-src{margin:8px 0 0;font-size:13px;color:var(--muted)}
.mp-photo-grid figcaption a{color:inherit}
/* admin: suggested ticks */
.sg-card{margin:0 0 16px;padding:18px 20px;border:1px solid var(--rule);border-radius:14px;background:#fff}
.sg-card h2{margin:0 0 4px;font:800 19px var(--head)}
.sg-why{margin:0 0 12px;font-size:14px;color:var(--ink-2)}
.sg-group{margin:0 0 10px}
.sg-group>b{display:block;margin:0 0 5px;font:700 12px var(--head);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.sg-ticks{display:flex;flex-wrap:wrap;gap:6px 8px}
.sg-ticks label{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;background:var(--soft);font-size:14px;cursor:pointer}
.sg-ticks input{accent-color:var(--teal-d)}
.sg-act{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:12px 0 0}

/* ---------- accreditations and Made in the UK (8 Nov 2026) ---------- */
.mp2 .mp-certs{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0}
.cert-b{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 8px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--teal);color:var(--teal-d);font:600 12.5px var(--head)}
.cert-b::before{content:"";width:14px;height:14px;border-radius:50%;background:var(--teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5'%3E%3Cpath d='M5 12l4 4 10-10'/%3E%3C/svg%3E") no-repeat center/9px}
.cert-b.uk{box-shadow:inset 0 0 0 1.5px #1d4f91;color:#1d4f91}
.cert-b.uk::before{background-color:#1d4f91}
.cert-rows{display:grid;gap:10px}
.cert-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1.2fr) minmax(0,.8fr) minmax(0,.9fr);gap:8px 16px;align-items:end;padding:14px 16px;border-radius:12px;background:#fff;box-shadow:inset 0 0 0 1px var(--rule)}
.cert-row.has{box-shadow:inset 0 0 0 1.5px var(--teal)}
.cert-row label{display:block;font:600 12px var(--head);color:var(--ink-2);margin:0 0 4px}
.cert-row input[type=text],.cert-row input[type=month]{width:100%}
.cert-row input[type=file]{width:100%;font-size:13px}
.cert-name b{display:block;font:700 15px var(--head)}
.cert-name span{display:block;font-size:13px;color:var(--muted)}
.cert-name .cert-st{display:inline-block;margin-top:6px;padding:2px 8px;border-radius:999px;font:600 12px var(--head)}
.cert-st.ok{background:var(--teal-l);color:var(--teal-d)}
.cert-st.wait{background:#fff4dc;color:#7a5200}
.cert-st.no{background:#fde8e8;color:#9b1c1c}
.cert-row .cert-off{grid-column:1/-1;display:flex;align-items:center;gap:8px;font:500 13.5px var(--sans);color:var(--ink-2)}
.cert-act{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.cert-add{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
@media (max-width:760px){.cert-row{grid-template-columns:minmax(0,1fr)}}
/* the whole band text leads to the join page, as well as the button */
.jb-text{position:relative}
.jb-h a{color:#fff;text-decoration:none}
.jb-h a::after{content:"";position:absolute;inset:0}
.jb-h a:hover,.jb-h a:focus-visible{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
.site-join .jb-text:hover .jb-s{color:#fff}

/* ---------- Members add products and headings (Edit your entry) and SDEA admin > New categories (8 Nov 2026) ---------- */
.ed .ed-add{grid-column:1/-1;margin:6px 0 2px}
.ed .ed-add label{display:block;margin:0 0 4px;font:400 13px var(--sans);color:var(--muted);cursor:default}
.ed .ed-add input,.ed .ed-newhead input{display:block;width:100%;max-width:520px;border:1.5px solid #cfd2d6;border-radius:10px;padding:9px 12px;font:15px var(--sans);background:#fff}
.ed .ed-newhead{margin:6px 0 0;padding:4px 16px 16px;border-radius:12px;background:#fff}
.ed .ed-newhead label{display:block;margin:12px 0 4px;font:600 14px var(--sans)}
.ed .ed-wait{margin:6px 0 0;font:600 13px var(--sans);color:#8a5a00}
.nc-card{margin:0 0 18px;padding:16px 18px;border:1px solid #e3e5e8;border-radius:14px;background:#fff}
.nc-card .nc-what{margin:0 0 4px;font:500 16px var(--sans)}
.nc-card .nc-close{color:#8a5a00}
.nc-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px 18px;margin:10px 0}
.nc-fields label{display:flex;flex-direction:column;gap:4px;font:600 13px var(--sans)}
.nc-fields .nc-wide{grid-column:1/-1}
.nc-fields input,.nc-fields select,.nc-act input{border:1.5px solid #cfd2d6;border-radius:10px;padding:8px 10px;font:15px var(--sans);background:#fff}
.nc-act{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:4px 0 0}
.nc-act input{flex:1 1 220px}
.nc-done li{margin:0 0 4px}
.cat-types{margin:0 0 18px}

/* ---------- Member profile, redesigned (8 Nov 2026): their work first, what they supply grouped by kind ---------- */
.mp2 .mp-photos{margin-top:0;padding-top:0;border-top:0}
.mp2 .mp-photos.mp-few .mp-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.mp2 .mp-photos.mp-many .mp-photo-grid figure:first-child{grid-column:1/-1}
.mp2 .mp-photos.mp-many .mp-photo-grid figure:first-child img{aspect-ratio:16/9}
.mp2 .mp-photo-grid a{border-radius:14px}
.mp2 .mp-supply{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 20px;align-items:start}
.mp2 .mp-fam{padding:16px 18px 18px;border-radius:14px;background:var(--soft)}
.mp2 .mp-fam h3{margin:0 0 12px;font:700 12px var(--head);letter-spacing:.07em;text-transform:uppercase;color:var(--teal-d)}
.mp2 .mp-fam ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mp2 .mp-fam li a,.mp2 .mp-fam li b{font:600 15px/1.3 var(--head);color:var(--ink);text-decoration:none}
.mp2 .mp-fam li a:hover{color:var(--teal-d);text-decoration:underline}
.mp2 .mp-fam li span{display:block;margin-top:3px;font-size:13.5px;line-height:1.45;color:var(--muted)}
.mp2 .mp-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 26px;margin:0}
.mp2 .mp-facts div{min-width:0}
.mp2 .mp-facts dt{margin:0 0 3px;font:700 12px var(--head);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.mp2 .mp-facts dd{margin:0;font-size:14.5px;line-height:1.55;color:var(--ink-2)}
@media (max-width:700px){.mp2 .mp-supply,.mp2 .mp-facts{grid-template-columns:minmax(0,1fr)}.mp2 .mp-photos.mp-few .mp-photo-grid{grid-template-columns:minmax(0,1fr)}}

/* the SDEA adds photos of a member's work (sdea-admin/member.php) */
.adm-media-photos{margin:18px 0 6px;padding:16px 0 0;border-top:1px solid var(--rule)}
.adm-media-photos h3{margin:0 0 10px;font:700 16px var(--head)}
.adm-ph-now{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:0 0 12px}
.adm-ph-now label{display:flex;flex-direction:column;gap:4px;font-size:13px}
.adm-ph-now img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
.adm-ph-rm{display:flex;align-items:center;gap:6px;color:var(--muted)}
.adm-ph-new{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:6px 12px;align-items:center;margin:0 0 8px}
.adm-ph-new label{grid-column:1/-1;margin:0;font:600 13px var(--sans)}
.adm-ph-new input[type=text]{border:1.5px solid #cfd2d6;border-radius:8px;padding:7px 9px;font:14px var(--sans)}
.nc-undo{display:inline}
@media (max-width:600px){.adm-ph-new{grid-template-columns:minmax(0,1fr)}}

/* ---------- SDEA admin, grouped menu (8 Nov 2026) ---------- */
.adm-nav2{position:relative;align-items:center;z-index:30}
.adm-nav2>a,.adm-nav2 summary{padding:7px 14px;border-radius:999px;background:var(--soft);font:600 14px var(--head);color:var(--ink);text-decoration:none;cursor:pointer;list-style:none}
.adm-nav2 summary::-webkit-details-marker{display:none}
.adm-nav2 summary::after{content:"";display:inline-block;width:6px;height:6px;margin:0 0 3px 8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
.adm-nav2 details{position:relative}
.adm-nav2 details[open] summary{background:var(--ink);color:#fff}
.adm-nav2 details>div{position:absolute;left:0;top:calc(100% + 6px);min-width:230px;display:grid;padding:6px;border-radius:14px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.14),0 0 0 1px var(--rule)}
.adm-nav2 details>div a{padding:9px 12px;border-radius:9px;background:transparent;font:500 14.5px var(--sans);color:var(--ink);text-decoration:none}
.adm-nav2 details>div a:hover{background:var(--soft)}
.adm-nav2 .adm-home{background:var(--teal-l);color:var(--teal-d)}
/* one page per member */
.adm-sum{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:6px 0 12px}
.adm-sum-c{padding:16px 18px;border-radius:14px;background:var(--soft)}
.adm-sum-c h3{margin:0 0 10px;font:700 15px var(--head)}
.adm-sum-c h3 small{font-weight:500;color:var(--muted)}
.adm-sum-c dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 6px}
.adm-sum-c dt{font-size:12px;color:var(--muted)}
.adm-sum-c dd{margin:2px 0 0;font:800 22px var(--head)}
.adm-sum-c dd small{font:500 13px var(--sans);color:var(--muted)}
.adm-sum-c ul{margin:0;padding:0 0 0 18px;font-size:14px;line-height:1.6}
.adm-jump{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 18px;font:600 14px var(--head)}
.adm-cra{margin:0 0 12px;padding-left:18px}
.adm-cra li{margin:0 0 6px}
.adm-cra-add{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;align-items:end;max-width:720px}
.adm-cra-add label{display:flex;flex-direction:column;gap:4px;font:600 13px var(--sans)}
.adm-cra-add label.wide{grid-column:1/-1}
.adm-cra-add label.chk{flex-direction:row;align-items:center;gap:8px;font-weight:500}
.adm-cra-add input[type=text],.adm-cra-add input[type=number],.adm-cra-add select{border:1.5px solid #cfd2d6;border-radius:9px;padding:8px 10px;font:15px var(--sans);background:#fff}
.adm-cra-add .btn{justify-self:start}
form.inline{display:inline}
.mb-former-h{margin-top:30px}
/* the admin home: what changed */
.adm-changes{margin:26px 0 10px}
.adm-changes h2{margin:0 0 6px}
.adm-changes ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px}
.adm-changes li{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:6px 16px;align-items:center;padding:10px 14px;border-radius:10px;background:var(--soft);font-size:14px}
.adm-ch-t{color:var(--muted);font-size:13px}
.adm-ch-a{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:13.5px}
@media (max-width:700px){.adm-sum{grid-template-columns:minmax(0,1fr)}.adm-sum-c dl{grid-template-columns:repeat(2,minmax(0,1fr))}.adm-changes li{grid-template-columns:minmax(0,1fr)}.adm-cra-add{grid-template-columns:minmax(0,1fr)}}

/* ---------- Members' area: "My profile" tabs over the four pages ---------- */
.myp{margin:0 0 26px;padding:16px 18px 14px;border-radius:16px;background:var(--soft)}
.myp-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin:0 0 10px}
.myp-k{margin:0;font:800 20px var(--head)}
.myp-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.myp-tabs a{padding:8px 14px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--rule);font:600 14px var(--head);color:var(--ink);text-decoration:none}
.myp-tabs a:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}
.myp-tabs a[aria-current]{background:var(--ink);color:#fff;box-shadow:none}
.myp-score{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:14px;color:var(--ink-2)}
.myp-bar{flex:0 0 140px;height:8px;border-radius:99px;background:#fff;box-shadow:inset 0 0 0 1px var(--rule);overflow:hidden}
.myp-bar i{display:block;height:100%;background:var(--teal);border-radius:99px}

/* member cards with a photo of their work (A to Z, supplier pages) */
.prose .mcard.has-photo{grid-template-columns:160px minmax(0,1fr) 210px}
.prose .mcard-photo{display:block;border-radius:10px;overflow:hidden;align-self:stretch;min-height:120px;background:var(--soft)}
.prose .mcard-photo img{display:block;width:100%;height:100%;object-fit:cover}
@media (max-width:900px){.prose .mcard.has-photo{grid-template-columns:120px minmax(0,1fr)}.prose .mcard-photo{grid-column:1/-1;grid-row:1;aspect-ratio:16/7;min-height:0}}
@media (max-width:600px){.prose .mcard.has-photo{grid-template-columns:96px minmax(0,1fr)}}
/* Directory 2027 form: the member's own headings */
.df-own{margin:16px 0 8px;font:700 14px var(--head)}

/* Carbon measured with Convert+ (automatic accreditation, 8 Nov 2026) */
.cert-b.cp{box-shadow:inset 0 0 0 1.5px #2f7d32;color:#2f7d32}
.cert-b.cp::before{background-color:#2f7d32}
.cp-box{margin:0 0 22px;padding:16px 18px;border-radius:14px;background:var(--soft);box-shadow:inset 4px 0 0 #2f7d32}
.cp-box.on{background:#eef6ee}
.cp-box p{margin:0 0 8px}
.cp-box .cp-k{font:800 16px var(--head);color:#2f7d32}

/* ---------- members' area, 8 Nov 2026 (late) ---------- */
/* Welcome: their figures this month */
.myfig{margin:0 0 18px;padding:20px 22px;border-radius:16px;background:var(--teal-l)}
.myfig-head,.pf-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.myfig-head h2{margin:0;font-size:20px}
.myfig-head a,.pf-head a{font:700 14px var(--head);color:var(--teal-d)}
.myfig-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 10px}
.myfig-grid p{margin:0;padding:14px 14px 12px;border-radius:12px;background:#fff}
.myfig-grid b{display:block;font:800 30px/1.1 var(--head);color:var(--ink)}
.myfig-grid span{display:block;margin:4px 0 6px;font:600 14px/1.3 var(--sans);color:var(--ink-2)}
.myfig-grid small{font:400 13px var(--sans);color:var(--muted)}
.myfig-note{margin:0;font-size:13px;color:var(--muted)}
@media (max-width:700px){.myfig-grid{grid-template-columns:1fr 1fr}}
/* Products and services: a find box, ticked headings first, and only what is ticked until "Show all" */
.ed .ed-find{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:6px 0 12px}
.ed .ed-find[hidden]{display:none}
.ed .ed-find input{flex:1;min-width:220px;padding:11px 12px;border-radius:10px;border:1.5px solid #cfd2d6;font:16px var(--sans);background:#fff}
.ed .ed-famlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row dense;gap:8px}
.ed .ed-famlist .ed-cat{margin:0;padding:11px 14px}
.ed .ed-famlist .ed-cat.on{order:-1;box-shadow:inset 3px 0 0 var(--teal)}
.ed .ed-famlist .ed-cat.on.has-tk,.ed .ed-famlist .ed-cat.on.all,.ed .ed-famlist .ed-cat.find{grid-column:1/-1}
.ed .ed-compact .ed-cat.js.on:not(.has-tk):not(.all) .ed-subs{margin-top:4px}
.ed .ed-compact .ed-cat.js.on:not(.all):not(.find) .ed-subs>label:not(.tk){display:none}
.ed .ed-compact .ed-cat.js.on:not(.all):not(.find) .ed-add{display:none}
.ed .ed-cat.find .ed-subs>label.nf{display:none}
.ed .ed-more{grid-column:1/-1;justify-self:start;margin:2px 0 0;padding:6px 0;border:0;background:none;font:600 14px var(--sans);color:var(--teal-d);text-decoration:underline;cursor:pointer}
.ed .ed-more[hidden],.ed .ed-cat.find .ed-more{display:none}
@media (max-width:700px){.ed .ed-famlist{grid-template-columns:minmax(0,1fr)}}
/* members' area on a phone: the menu at the top as well as at the foot */
.mm-top{display:none}
@media (max-width:900px){
  .mm-top{display:block;margin:0 0 20px;border-radius:12px;background:var(--soft)}
  .mm-top summary{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:0 16px;font:700 15px var(--head);cursor:pointer;list-style:none}
  .mm-top summary::-webkit-details-marker{display:none}
  .mm-top summary::after{content:"";width:9px;height:9px;border:solid var(--ink);border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-3px)}
  .mm-top[open] summary::after{transform:rotate(-135deg) translateY(-2px)}
  .mm-top summary span{margin-left:auto;font:500 14px var(--sans);color:var(--muted)}
  .mm-top ul{list-style:none;margin:0;padding:0 16px 8px}
  .mm-top li a{display:flex;align-items:center;min-height:44px;border-top:1px solid var(--rule);color:var(--ink);text-decoration:none;font:500 15px var(--sans)}
  .mm-top li a[aria-current]{color:var(--teal-d);font-weight:700}
}
/* ---------- jobs board (8 Nov 2026) ---------- */
.jobs-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0 8px}
.prose a.jobs-card{display:flex;flex-direction:column;gap:4px;padding:18px 20px;border-radius:14px;background:var(--soft);color:var(--ink);text-decoration:none;box-shadow:inset 0 0 0 1px var(--rule)}
.prose a.jobs-card:hover{box-shadow:inset 0 0 0 2px var(--teal)}
.jobs-card b{font:700 18px/1.3 var(--head)}
.jobs-type{font:700 12px var(--head);letter-spacing:.06em;text-transform:uppercase;color:var(--teal-d)}
.jobs-co{font-weight:600;color:var(--ink-2)}
.jobs-meta,.jobs-when{font-size:14px;color:var(--muted)}
.jobs-empty{padding:18px 20px;border-radius:14px;background:var(--soft)}
.jobs-facts{display:flex;flex-wrap:wrap;gap:6px 10px;margin:0 0 18px}
.jobs-facts span{padding:4px 12px;border-radius:999px;background:var(--soft);font:600 14px var(--sans)}
.jobs-apply{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:22px 0 8px}
#mine{margin:0 0 30px}
@media (max-width:700px){.jobs-list{grid-template-columns:minmax(0,1fr)}}

/* ---------- Christmas Lunch booking (9 Nov 2026) ---------- */
.xm-facts{display:flex;flex-wrap:wrap;gap:8px 10px;margin:0 0 18px}
.xm-facts span{padding:6px 14px;border-radius:999px;background:var(--soft);font:600 15px var(--sans)}
.xm-hero{margin:0 0 22px}
.prose .xm-hero img{display:block;width:100%;height:auto;margin:0;border-radius:18px}
.xm-pics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0 6px}
.xm-pics figure{margin:0}
.xm-pics a{display:block;border-radius:10px;overflow:hidden;cursor:zoom-in}
.prose .xm-pics img{display:block;width:100%;aspect-ratio:1/1;height:auto;margin:0;object-fit:cover;border-radius:0}
.xm-pics p{grid-column:1/-1;margin:0}
@media (max-width:600px){.xm-pics{grid-template-columns:repeat(2,minmax(0,1fr))}}
.xm-menu{margin:24px 0;padding:20px 22px;border-radius:16px;background:var(--soft)}
.xm-menu h2{margin:0 0 10px}
.xm-menu>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.xm-menu h3{margin:0 0 6px;font-size:16px}
.xm-menu ul{margin:0 0 8px;padding:0;list-style:none}
.xm-menu li{padding:3px 0}
@media (max-width:700px){.xm-menu>div{grid-template-columns:1fr}}
.xm-book{margin:28px 0 10px}
.xm-left{font-weight:700;color:var(--magenta,#c0264b)}
.xm-closed{padding:18px 20px;border-radius:14px;background:var(--soft)}
.xm-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.upd input[type=tel],.upd input[type=email]{display:block;width:100%;border:1.5px solid #cfd2d6;border-radius:10px;padding:10px 12px;font:16px var(--sans);background:#fff}
.xm-n{max-width:220px;margin:0 0 14px}
.xm-names{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}
.xm-name[hidden]{display:none}
@media (max-width:600px){.xm-names{grid-template-columns:1fr}}
.xm-total{margin:18px 0 6px;font-size:17px}
.mp-note.ok .btn{margin-top:4px}
.xm-chosen{margin:0 0 16px}
.xm-acts{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 16px}
.xm-tots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.xm-tots ul{list-style:none;margin:0;padding:0}
.xm-tots li{padding:4px 0;border-bottom:1px solid var(--rule)}
.xm-tots li b{display:inline-block;min-width:28px}
tr.xm-off td{opacity:.5}
@media (max-width:700px){.xm-tots{grid-template-columns:1fr}}
