/* The Shepherd Friends Phase 1E — editorial layout refinement.
   Brand/typography/navigation inherit the NAKEF-standard site design. */

/* About: one purposeful documentary photograph rather than a random inset portrait. */
.about-visual-1e{min-height:530px;padding:18px 28px 30px 0;position:relative}
.about-visual-1e .about-arch{position:relative;height:505px;width:100%;overflow:hidden;border-radius:43% 5px 5px 5px/25% 5px 5px 5px;box-shadow:0 24px 45px #233e451b;background:#d6ded9}
.about-visual-1e .about-arch img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 40%}
.about-visual-note{position:absolute;bottom:4px;right:0;max-width:270px;background:#d9be82;color:#203d4b;padding:20px 22px;box-shadow:0 10px 26px #1c36421a}
.about-visual-note strong{font-size:17px;letter-spacing:-.045em;font-weight:800;line-height:1.2;display:block}
.about-visual-note small{display:block;font-size:10px;font-weight:600;letter-spacing:.045em;line-height:1.5;margin-top:7px}
.about-note-rule{display:none}

/* Stories: use a single cohesive documentary photograph rather than an unrelated diploma collage. */
.story-grid{align-items:center}
.story-images-1e{height:540px;position:relative;max-width:none}
.story-editorial-photo{position:absolute;inset:0 15px 34px 0;overflow:hidden;background:#d5dedb;border-radius:7px 48% 7px 7px/7px 27% 7px 7px;box-shadow:0 20px 39px #213e4919}
.story-editorial-photo img{width:100%;height:100%;object-fit:cover;object-position:center 45%;display:block;transition:transform .85s cubic-bezier(.2,.7,.2,1)}
.story-images-1e:hover .story-editorial-photo img{transform:scale(1.027)}
.story-editorial-note{position:absolute;bottom:7px;right:0;background:#d9be82;color:#233e4c;font-weight:800;font-size:14px;line-height:1.23;padding:17px 23px;box-shadow:0 10px 25px #203e471a}

/* NAKEF-style horizontal portrait-and-quote testimonial cards. */
.testimonials-section{background:#f4f5f4}
.tsf-story-carousel{position:relative;min-width:0}
.tsf-story-viewport{overflow:hidden;touch-action:pan-y;padding:3px 0 10px}
.tsf-story-track{display:flex;gap:20px;align-items:stretch;transition:transform .53s cubic-bezier(.2,.7,.2,1);will-change:transform}
.tsf-story-card{box-sizing:border-box;flex:0 0 calc((100% - 20px) / 2);min-width:0;min-height:270px;display:grid;grid-template-columns:164px minmax(0,1fr);gap:19px;background:#fff;padding:18px;border:1px solid #e5e9e6;box-shadow:0 15px 30px #213e4910;margin:0;border-radius:2px}
.tsf-story-person{width:100%;height:100%;min-height:223px;object-fit:cover;object-position:center 27%;display:block;background:#d2dad6;border-radius:1px}
.tsf-story-copy{min-width:0;display:flex;flex-direction:column;padding:5px 4px 4px 0}
.tsf-quote-mark{font-family:Georgia,serif;font-size:64px;line-height:.72;color:#c9a965;display:block;height:45px}
.tsf-story-copy>p{font-size:14px;line-height:1.71;color:#3d525d;font-weight:500;margin:3px 0 17px}
.tsf-story-copy>footer{display:flex;flex-direction:column;gap:4px;margin-top:auto}
.tsf-story-copy>footer strong{font-size:14px;font-weight:800;color:#21404e}
.tsf-story-copy>footer span{font-size:11px;color:#738991}
.tsf-story-controls{display:flex;align-items:center;justify-content:center;gap:21px;margin-top:24px}
.tsf-story-arrow{width:43px;height:43px;display:grid;place-items:center;border:1px solid #b9c9cd;background:#fff;color:#244759;border-radius:50%;cursor:pointer;transition:background .23s,color .23s,border-color .23s}
.tsf-story-arrow:hover,.tsf-story-arrow:focus-visible{background:#244656;color:#fff;border-color:#244656}
.tsf-story-arrow svg,.news-controls-1e svg{width:18px;height:18px;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}
.tsf-story-dots{display:flex;align-items:center;gap:9px}
.tsf-story-dot{width:9px;height:9px;min-width:9px;border-radius:50%;border:0;background:#c7cfd1;padding:0;cursor:pointer}
.tsf-story-dot.is-active{width:10px;height:10px;min-width:10px;background:#c8a45c}

/* Approach: real image with unboxed, editorial principles, not a four-step AI diagram. */
.process-section-1e{background:#e9efeb}
.process-header{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.82fr);gap:clamp(28px,6vw,90px);align-items:end;margin-bottom:35px}
.process-header h2{font-size:clamp(38px,4.2vw,59px);line-height:1.12;letter-spacing:-.05em;margin:0}
.process-header>p{font-size:15px;color:#58717b;line-height:1.78;max-width:510px;margin:0 0 3px}
.process-feature{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:0;background:#fff;box-shadow:0 20px 45px #24404a13;overflow:hidden;min-height:535px}
.process-feature-image{min-height:520px;overflow:hidden;position:relative;background:#ceddd6}
.process-feature-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 44%;display:block;transition:transform .8s ease}
.process-feature-image:after{content:"";position:absolute;inset:46% 0 0;background:linear-gradient(0deg,#132e3cbd,transparent)}
.process-feature-image:hover img{transform:scale(1.02)}
.process-feature-image span{position:absolute;z-index:1;left:clamp(20px,3vw,48px);right:20px;bottom:clamp(20px,3.1vw,45px);font-size:clamp(21px,2.2vw,31px);font-weight:800;line-height:1.2;color:#fff;letter-spacing:-.035em}
.process-principles{padding:clamp(28px,4.2vw,62px);display:flex;flex-direction:column;justify-content:center}
.process-principles>div{padding:0 0 22px;margin-bottom:22px;border-bottom:1px solid #e1e6e2}
.process-principles>div:last-of-type{margin-bottom:21px}
.process-kicker{display:block;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#a88445;margin-bottom:7px}
.process-principles h3{font-size:clamp(21px,2vw,27px);font-weight:800;letter-spacing:-.042em;line-height:1.19;color:#213e4d;margin:0 0 8px}
.process-principles p{color:#5c737b;font-size:13px;line-height:1.66;margin:0}
.process-cta{display:inline-flex!important;align-self:flex-start;font-size:12px;font-weight:800;margin:0;text-decoration:none!important}

/* Partnerships: actual SVG logotype artwork in a neutral logo-wall, not text cards. */
.partners-section-1e{background:#fff}
.partners-head-1e{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(35px,5vw,80px);align-items:end;margin:0 0 35px}
.partners-head-1e .eyebrow{display:block;margin:0 0 15px}
.partners-head-1e h2{font-size:clamp(39px,4.3vw,60px);line-height:1.08;letter-spacing:-.05em;margin:0}
.partners-head-1e p{font-size:15px;line-height:1.76;color:#5b707a;margin:0 0 14px}
.partners-head-1e .text-link{font-size:11px;font-weight:800;text-decoration:none!important}
.partner-logo-stage{background:#fafbf9;border-top:1px solid #e7ebe8;border-bottom:1px solid #e7ebe8;padding:30px 18px}
.partner-logo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:center}
.partner-logo-item{min-height:111px;display:flex;justify-content:center;align-items:center;padding:16px 8px;transition:transform .23s ease}
.partner-logo-item:hover{transform:translateY(-3px)}
.partner-logo-item img{width:min(100%,232px);height:auto;max-height:74px;object-fit:contain;opacity:.85;filter:saturate(.65);transition:opacity .25s,filter .25s}
.partner-logo-item:hover img{opacity:1;filter:none}
.partners-closing{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:26px}
.partners-closing p{color:#536c77;font-size:14px;margin:0}
.partners-closing .button{min-height:51px}

/* News carousel controls — below cards, centered, no 'More from our journal'. */
.news-controls-1e{display:flex;justify-content:center;align-items:center;gap:0;margin-top:0;padding-top:13px}
.news-controls-1e .news-carousel-buttons{display:flex;align-items:center;justify-content:center;gap:18px}
.news-controls-1e .news-carousel-buttons button{display:grid;place-items:center;border:1px solid #b7c6cb;background:#fff;color:#244759;border-radius:50%;width:43px;height:43px;padding:0}
.news-controls-1e .news-carousel-buttons button:hover{background:#244759;color:#fff}
.news-pagination{font-size:11px;font-weight:800;letter-spacing:.13em;color:#738995;min-width:55px;text-align:center}

@media(max-width:899px){
 .tsf-story-card{flex-basis:100%}
 .process-header{grid-template-columns:1fr;gap:15px;margin-bottom:27px}
 .process-feature{grid-template-columns:1fr}
 .process-feature-image{min-height:395px}
 .partners-head-1e{grid-template-columns:1fr;gap:18px}
 .partner-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:600px){
 .about-visual-1e{min-height:355px;padding:0 11px 18px 0;max-width:100%}
 .about-visual-1e .about-arch{height:360px;border-radius:40% 4px 4px 4px/22% 4px 4px 4px}
 .about-visual-note{right:0;bottom:0;max-width:190px;padding:12px 14px}
 .about-visual-note strong{font-size:12px}.about-visual-note small{font-size:9px;margin-top:4px}
 .story-images-1e{height:360px;max-width:100%}
 .story-editorial-photo{inset:0 9px 25px 0;border-radius:7px 44% 7px 7px/7px 24% 7px 7px}
 .story-editorial-note{font-size:12px;padding:12px 14px}
 .tsf-story-track{gap:14px}
 .tsf-story-card{grid-template-columns:95px minmax(0,1fr);gap:13px;padding:12px;min-height:230px}
 .tsf-story-person{height:100%;min-height:200px;object-position:center 28%}
 .tsf-quote-mark{font-size:43px;height:29px}
 .tsf-story-copy>p{font-size:12px;line-height:1.59;margin:4px 0 10px}
 .tsf-story-copy>footer strong{font-size:12px}.tsf-story-copy>footer span{font-size:10px}
 .tsf-story-controls{margin-top:18px;gap:14px}.tsf-story-arrow{width:39px;height:39px}
 .process-header h2{font-size:clamp(34px,9.2vw,44px)}.process-header>p{font-size:13px}
 .process-feature-image{min-height:340px}.process-feature-image span{font-size:23px}
 .process-principles{padding:27px 23px 30px}.process-principles>div{padding-bottom:18px;margin-bottom:18px}
 .process-principles h3{font-size:21px}
 .partners-head-1e h2{font-size:clamp(33px,9.2vw,44px)}.partners-head-1e p{font-size:13px}
 .partner-logo-stage{padding:12px 5px}.partner-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}
 .partner-logo-item{min-height:87px;padding:10px 5px}.partner-logo-item:last-child:nth-child(odd){grid-column:1/-1;width:56%;margin:auto}
 .partners-closing{flex-direction:column;gap:13px;align-items:center;text-align:center;padding-top:24px}
 .partners-closing .button{margin:0 auto!important;min-width:170px}
 .section-after-actions{justify-content:center!important}
 .hero-actions{justify-content:center!important;gap:10px}
 .closing-actions{justify-content:center!important}
 .story-copy>.button{margin:0 auto!important;display:table}
 .news-controls-1e{margin-top:4px;padding-top:14px}
}
@media(max-width:360px){
 .tsf-story-card{grid-template-columns:82px minmax(0,1fr);gap:11px;padding:11px}
 .tsf-story-person{min-height:190px}
 .tsf-story-copy>p{font-size:11.3px;line-height:1.55}
 .hero-actions .button{min-width:0;flex:1;padding-inline:8px}
}
@media(prefers-reduced-motion:reduce){
 .tsf-story-track,.story-editorial-photo img,.process-feature-image img{transition:none}
}
