/* 1.8.7 approved contrast palette. Appearance only; no scroll logic changes. */
body:not(.elementor-editor-active) *,
body:not(.elementor-editor-active) *::before,
body:not(.elementor-editor-active) *::after{border-color:transparent!important}
/* Keyboard focus remains visible, in the surrounding text colour. */
body:not(.elementor-editor-active) :focus-visible{outline-color:currentColor!important}
.re-home-layout .e-con.re-home-writing-shell,
.re-home-layout .re-writing-showcase{background:#f6f6f6;color:#000}
.re-home-layout .re-writing-intro h2,
.re-home-layout .re-writing-showcase .re-writing-track h3,
.re-home-layout .re-writing-showcase .re-writing-track h3 a{color:#000;font-weight:800}
.re-home-layout .re-writing-showcase .re-writing-track>.re-journal-card{background:#fff;border:0;box-shadow:0 8px 26px #0000000d}
.re-home-layout .re-writing-showcase .re-writing-track>.re-journal-card:hover,
.re-home-layout .re-writing-showcase .re-writing-track>.re-journal-card:focus-within{background:#fff;box-shadow:0 14px 32px #00000018}
.re-home-layout .re-writing-showcase .re-journal-card>.re-journal-meta,
.re-home-layout .re-writing-showcase .re-card-time,
.re-home-layout .re-writing-showcase .re-journal-read{color:#555}
.re-home-layout .re-writing-showcase .re-writing-placeholder{background:#f6f6f6;color:#555}
.re-home-layout .e-con.re-home-volunteer-scroll-shell,
.re-home-layout .re-volunteer-scroll{background:#000;color:#fff;--re-vs-active:#fff}
.re-home-layout .re-vs-left .re-vs-heading h2{color:#fff}
.re-home-layout .re-vs-heading .re-eyebrow{color:#bbb}
.re-home-layout .re-vs-left .re-vs-tab{color:#aaa;letter-spacing:-.025em}
.re-home-layout .re-vs-left .re-vs-tab:hover,
.re-home-layout .re-vs-left .re-vs-tab:focus-visible,
.re-home-layout .re-vs-left .re-vs-tab[aria-selected=true]{color:#fff}
.re-home-layout .re-vs-left .re-vs-tab[aria-selected=true]:before{background:#fff}
.re-home-layout .re-vs-panel,
.re-home-layout .re-vs-panel:hover,
.re-home-layout .re-vs-panel:focus-within{background:#212121;color:#fff;border:0;box-shadow:none}
.re-home-layout .re-vs-panel h3{color:#fff;font-weight:800}
.re-home-layout .re-vs-subtitle,
.re-home-layout .re-vs-description,
.re-home-layout .re-vs-dates{color:#ccc}
.re-home-layout .re-vs-more,
.re-home-layout .re-vs-more:hover{color:#fff;border:0;text-decoration:underline;text-underline-offset:5px}
@media(max-width:900px){.re-home-layout .re-vs-left .re-vs-tab[aria-selected=true]{text-decoration:underline;text-underline-offset:7px}}
/* Shared navigation, including Contact. */
.re-site-header .e-con.re-header-row,
.re190-contact-page .re-site-header .re-header-row{background:#fff;box-shadow:0 5px 18px #0000000b}
.re-site-header .re-menu a,
.re190-contact-page .re-site-header a,
.re190-contact-page .re-site-header .current-menu-item>a{color:#000}
.re-site-header .re-nav-contact,
.re190-contact-page .re-site-header .re-nav-contact{background:#000;color:#fff;box-shadow:none}
/* Entire shared footer is black, including Elementor containers and copyright. */
.re-site-footer{background:#000;color:#fff;--re-ink:#fff;--re-paper:#000;--re-lilac:#000;--re-pink:#000;--re-muted:#ccc}
.re-site-footer .e-con,
.re-site-footer .re-footer-bottom{background:#000!important;background-image:none!important;color:#fff;border:0;box-shadow:none}
.re-site-footer .elementor-heading-title,
.re-site-footer .elementor-widget-text-editor,
.re-site-footer .re-footer-contact,
.re-site-footer .re-footer-quick-links,
.re-site-footer .re-footer-contact a,
.re-site-footer .re-footer-quick-links a{color:#fff!important}
.re-site-footer .re-footer-heading:after{display:none}
.re-site-footer .re-social-tile{background:#212121;color:#fff;box-shadow:none}
.re-site-footer .re-social-tile:hover{background:#333}
.re-site-footer .re-social-x-twitter,
.re-site-footer .re-social-threads,
.re-site-footer .re-social-github,
.re-site-footer .re-social-tiktok{color:#fff}
.re-site-footer .re-footer-copyright{background:#000!important;color:#ccc}
/* 1.8.8: explicit text colours prevent Elementor heading defaults on dark media. */
.elementor .re-video-card h3,
.re-video-card h3{color:inherit!important;opacity:1}
.elementor .re-photo-dark .re-video-card,
.re-photo-dark .re-video-card,
.elementor .re-dark .re-video-card{color:#fff}
.elementor .re-photo-white .re-video-card,
.re-photo-white .re-video-card{color:#000}
.elementor .re-photo-dark h2.elementor-heading-title,
.elementor .re-photo-dark h3.elementor-heading-title,
.elementor .re-journal-opening .re-journal-feature-copy h2,
.elementor .re-journal-opening .re-journal-feature-copy h2 a{color:#fff!important;opacity:1}
.re-photo-dark .re-video-card p{color:#ddd}
.re-video-card>a{color:inherit;opacity:1}
/* Section joins use the real section background; no artificial white footer cap. */
:root{--re-join-radius:24px;--re-footer-curve:48px}
#main-content{position:relative;z-index:1}
.re-site-footer{position:relative;isolation:isolate;padding-top:0;background:#000}
.re-site-footer::before{content:none}
body.re-has-footer-curve .re-site-footer::before{content:"";position:absolute;inset:calc(-1 * var(--re-footer-curve)) 0 auto;height:var(--re-footer-curve);background:#000;z-index:-1;pointer-events:none}
.re-site-footer .e-con.re-footer-shell{margin-top:0;border-radius:0;--border-radius:0}
#main-content .re-page-edge{--re-edge-top:0px;--re-edge-bottom:0px;border-radius:var(--re-edge-top) var(--re-edge-top) var(--re-edge-bottom) var(--re-edge-bottom)!important;--border-radius:var(--re-edge-top) var(--re-edge-top) var(--re-edge-bottom) var(--re-edge-bottom)}
#main-content .re-page-edge::before{border-radius:inherit!important}
#main-content .re-page-edge.re-edge-top{--re-edge-top:var(--re-join-radius)}
#main-content .re-page-edge.re-edge-bottom{--re-edge-bottom:var(--re-join-radius)}
#main-content .re-page-edge .re-instagram,
#main-content .re-page-edge .re-writing-showcase{border-radius:inherit!important}
#main-content .re-page-edge.re-footer-edge{--re-edge-bottom:var(--re-footer-curve);margin-bottom:0!important;clip-path:inset(0 round var(--re-edge-top) var(--re-edge-top) var(--re-edge-bottom) var(--re-edge-bottom))}
/* Remove the obsolete decorative wave above the contact footer. */
#main-content .re190-wave{display:none!important}
@media(max-width:767px){:root{--re-join-radius:20px;--re-footer-curve:28px}}
/* 1.8.11: reference pink-to-white outer page canvas. */
body,
body.re190-contact-page{background-color:#faf7f9;background-image:linear-gradient(105deg,#f59af5 0%,#f4b5ef 32%,#f8e3f4 64%,#faf8fa 94%);background-attachment:fixed}
@media(max-width:767px){body,body.re190-contact-page{background-attachment:scroll}}
/* 1.8.12: Contact uses the approved neutral palette in both supplied layouts. */
.elementor .re190-contact{--c-bg:#f6f6f6;--c-ink:#000;--c-accent:#000;--c-muted:#555;--c-shadow:0 8px 26px #0000000d;background:#f6f6f6;color:#000}
.elementor .re190-contact .re190-card{background:#fff}
.elementor .re190-contact .re-form input,
.elementor .re190-contact .re-form select,
.elementor .re190-contact .re-form textarea{background:#f6f6f6;color:#000;box-shadow:none;border:0}
.elementor .re190-contact .re-form input::placeholder,
.elementor .re190-contact .re-form textarea::placeholder{color:#666;opacity:1}
.elementor .re190-contact .re-form button{background:#000;color:#fff;box-shadow:none}
.elementor .re190-contact .re-form button:hover{background:#212121;color:#fff}
.elementor .re190-contact .re-form-note{color:#555}
.elementor .re190-contact .re-form-status{background:#eee;color:#000}
.elementor .re190-contact .re-form-note a{color:#000;text-decoration:underline}
.elementor .re190-contact .elementor-icon svg{fill:currentColor}
.elementor .re190-contact .elementor-tab-title,
.elementor .re190-contact .elementor-tab-content{background:#fff;color:#000}
.elementor .re190-contact .elementor-tab-title a,
.elementor .re190-contact .elementor-accordion-icon{color:#000}
.elementor .re190-contact .re190-wave:before{background:#e6e6e6}
.elementor .re190-contact .re190-wave:after{background:#fff}
.re190-contact-page .re-site-header{background:transparent}
/* Earlier Contact layout, retained for installations that have not reimported. */
.elementor .e-con.re180-contact-hero,
.elementor .e-con.re180-contact-grid{background:#f6f6f6;color:#000}
.elementor .re180-contact-aside{background:#000;color:#fff}
.elementor .re180-contact-aside .elementor-heading-title,
.elementor .re180-contact-aside p,
.elementor .re180-contact-aside .elementor-button{color:#fff}
.elementor .re180-contact-aside .elementor-button{background:transparent}
.elementor .re180-contact-aside .re180-aside-note{color:#ccc}
.elementor .re180-contact-form{background:#fff;color:#000;box-shadow:0 8px 26px #0000000d}
.elementor .re180-contact-form .elementor-heading-title{color:#000}
.elementor .re180-contact-form .re-form input,
.elementor .re180-contact-form .re-form select,
.elementor .re180-contact-form .re-form textarea{background:#f6f6f6;color:#000;border:0}
.elementor .re180-contact-form .re-form button{background:#000;color:#fff}
.elementor .re180-contact-form .re-form button:hover{background:#212121}
.elementor .re180-contact-form .re-form-note{color:#555}
.elementor .re180-contact-form .re-form-status{background:#eee;color:#000}
/* Editable footer information pages. */
.elementor .re-footer-info-page{background:#fff;color:#000;max-width:1100px;margin:0 auto;padding:clamp(28px,5vw,72px);gap:28px}
.re-footer-info-page .elementor-heading-title,.re-footer-info-page h2{color:#000}
.re-footer-info-page .elementor-widget-text-editor{color:#333;line-height:1.8}
.re-footer-info-page .elementor-button{background:#000;color:#fff}
.re-footer-info-page .elementor-widget-image img{max-height:460px;object-fit:contain;border-radius:18px}

/* Responsive social tiles: the chosen row count controls tile and logo width. */
.elementor .re-social-grid{width:100%;max-width:100%;gap:clamp(4px,1.5vw,20px)}
.elementor .re-social-grid .re-social-tile{min-width:0;min-height:0;aspect-ratio:1.45;padding:12%;overflow:hidden}
.elementor .re-social-grid .re-social-logo{width:var(--re-social-icon-size,40px);max-width:100%;height:auto;aspect-ratio:1;flex-shrink:1}
.elementor .re-social-grid .re-social-logo svg{width:100%;height:auto;aspect-ratio:1}

/* 1.8.16: clip section backgrounds, not only the outer container's paint.
   clip-path preserves sticky scrolling (unlike overflow:hidden on a parent). */
#main-content .re-page-edge{clip-path:inset(0 round var(--re-edge-top) var(--re-edge-top) var(--re-edge-bottom) var(--re-edge-bottom))}
#main-content .re-page-edge .re-writing-showcase,
#main-content .re-page-edge .re-volunteer-scroll,
#main-content .re-page-edge .re-photo-platforms,
#main-content .re-page-edge .re-instagram{border-radius:var(--re-edge-top) var(--re-edge-top) var(--re-edge-bottom) var(--re-edge-bottom)!important}
.re-site-footer{border-radius:0 0 var(--re-join-radius) var(--re-join-radius)}
.re-site-footer > .elementor{clip-path:inset(0 round 0 0 var(--re-join-radius) var(--re-join-radius))}

/* These supplied page pairs are continuous surfaces, including before JS loads. */
#main-content .re180-roles:has(+ .re180-invitation),
#main-content .re-photo-white:has(+ .re-photo-banner){
 --re-edge-bottom:0px!important;
 border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;
}
#main-content .re180-roles + .re180-invitation,
#main-content .re-photo-white + .re-photo-banner{
 --re-edge-top:0px!important;
 border-top-left-radius:0!important;border-top-right-radius:0!important;
}
#main-content .re180-roles:has(+ .re180-invitation)::before,
#main-content .re-photo-white:has(+ .re-photo-banner)::before{
 border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;
}

/* 1.8.18: full available footer width and a quiet copyright divider. */
.re-site-footer > .elementor,
.re-site-footer .e-con.re-footer-shell,
.re-site-footer .e-con.re-footer-columns,
.re-site-footer .e-con.re-footer-copyright{width:100%;max-width:none;--width:100%;--container-max-width:100%}
.re-site-footer .re-footer-shell > .e-con-inner,
.re-site-footer .re-footer-columns > .e-con-inner,
.re-site-footer .re-footer-copyright > .e-con-inner{width:100%;max-width:none}
.re-site-footer .e-con.re-footer-copyright{position:relative;--padding-top:28px;--padding-bottom:28px}
.re-site-footer .e-con.re-footer-copyright::after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#292929;pointer-events:none}

/* Narrow, even outer canvas on every page. */
body,body.re190-contact-page{padding:10px}
@media(max-width:767px){body,body.re190-contact-page{padding:6px}}

/* Footer information pages share the full page and footer edge. */
#main-content .elementor .e-con.re-footer-info-page{
 width:100%;max-width:none;--width:100%;--container-max-width:100%;
 margin-left:0;margin-right:0;
 --padding-left:clamp(24px,5vw,72px);--padding-right:clamp(24px,5vw,72px);
}
#main-content .re-footer-info-page > .e-con-inner{width:100%;max-width:none}
#main-content .re-footer-info-page .elementor-widget-text-editor{width:100%;max-width:960px}

/* About: the existing editorial design, with fuller personal stories. */
.elementor .e-con.re-about-detail{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,80px);background:#fff;color:#17121d}
.elementor .re-about-detail-copy{padding:0;--padding-top:0;--padding-bottom:0;--padding-left:0;--padding-right:0;gap:22px}
.elementor .re-about-detail-copy .elementor-widget-text-editor{font-size:17px;line-height:1.85}
.elementor .re-about-detail-copy .re-eyebrow{font-size:11px;letter-spacing:.18em;color:#555}
.elementor .re-about-detail-image img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:20px}
.elementor .re-about-detail-image figcaption{font-size:11px;color:#666;margin-top:8px}
.elementor .e-con.re-about-photography{background:#f6f6f6}
.elementor .re-about-photography .re-about-detail-image{grid-column:1;grid-row:1}
.elementor .re-about-photography .re-about-detail-copy{grid-column:2;grid-row:1}
.elementor .re-about-detail .elementor-button{background:#000;color:#fff}
@media(max-width:900px){.elementor .e-con.re-about-detail{grid-template-columns:1fr}.elementor .re-about-photography .re-about-detail-image,.elementor .re-about-photography .re-about-detail-copy{grid-column:auto;grid-row:auto}.elementor .re-about-detail-image img{aspect-ratio:4/3;max-height:480px}}

/* English and Bengali journals: editorial headings, topic sections and soft cards. */
.re-language-journal{background:#f6f6f6;color:#111;padding:0 0 48px}
.re-language-hero{padding:clamp(36px,6vw,84px) 6%;background:#fff}
.re-language-hero h1{font-size:clamp(38px,5.5vw,76px);max-width:1050px;margin:18px 0 24px;line-height:1.14}
.re-language-hero>p:not(.re-eyebrow){font-size:19px;max-width:740px;color:#555}
.re-language-switch,.re-language-topics{display:flex;flex-wrap:wrap;gap:12px}
.re-language-switch{margin-top:30px}.re-language-switch a,.re-language-topics a{padding:10px 18px;border-radius:24px;text-decoration:none;background:#ececec;color:#111;font-size:14px}
.re-language-switch a[aria-current]{background:#000;color:#fff}
.re-language-topics{padding:28px 6%;background:#fff}
.re-language-topics a:hover,.re-language-topics a:focus-visible{background:#111;color:#fff}
.re-language-category{padding:38px 6%}
.re-language-category-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:24px}
.re-language-category-heading h2{font-size:clamp(28px,3vw,42px);margin:0}
.re-language-category-heading>a{font-size:14px;white-space:nowrap}
.re-language-journal .re-journal-card{padding:22px;background:#fff;border-radius:22px;box-shadow:0 8px 24px #00000009}
.re-language-journal .re-journal-card h3{font-family:inherit;font-weight:700;font-size:25px;line-height:1.4}
.re-language-journal .re-journal-meta{color:#555}
.re-language-journal .re-journal-image img{border-radius:12px}
.re-language-journal .re-journal-card:hover{background:#faf7f2}
.re-language-empty{color:#555;padding:20px 0}
.re-language-journal[lang=bn]{font-family:'Noto Sans Bengali',sans-serif;line-height:1.9}
@media(max-width:767px){.re-language-category-heading{flex-wrap:wrap}.re-language-hero h1{font-size:38px}.re-language-category{padding:28px 22px}.re-language-topics{padding:22px}.re-language-hero{padding:36px 22px}}
