.jf-home{--navy:#1a1a2e;--ink:#161616;--garnet:#b22222;--garnet-deep:#8f1c1c;--paper:#f7f5f2;--paper-deep:#efebe4;--white:#fff;--grey-text:#54545f;--line:#1a1a2e1a;--radius-lg:28px;--radius-md:18px;--radius-sm:10px;--radius-pill:100px;--shadow-soft:0 20px 45px -20px #1a1a2e2e;--shadow-card:0 14px 34px -18px #1a1a2e38;--ease:cubic-bezier(.22, .61, .36, 1);--font-display:var(--font-playfair), "Playfair Display", serif;--font-ui:var(--font-montserrat), Montserrat, sans-serif;--font-body:var(--font-lato), Lato, sans-serif;color:var(--navy);font-family:var(--font-body);-webkit-font-smoothing:antialiased}.jf-home img{max-width:100%;display:block}.jf-home a{color:inherit;text-decoration:none}.jf-home ul{margin:0;padding:0;list-style:none}.jf-home .container{width:90%;max-width:1240px;margin:0 auto}.jf-home .eyebrow{font-family:var(--font-ui);letter-spacing:.22em;text-transform:uppercase;color:var(--garnet);align-items:center;gap:10px;font-size:.72rem;font-weight:700;display:inline-flex}.jf-home .eyebrow:before,.jf-home .eyebrow:after{content:"";background:var(--garnet);width:26px;height:2px;display:inline-block}.jf-home h1,.jf-home h2,.jf-home h3{font-family:var(--font-display);color:var(--navy);margin:0;font-weight:600;line-height:1.08}.jf-home h2{font-size:clamp(2rem,3.4vw,2.9rem)}.jf-home h3{font-size:1.35rem}.jf-home p{color:var(--grey-text);margin:0;font-size:1.03rem;line-height:1.75}.jf-home .btn-white-ylw{font-family:Montserrat,sans-serif;font-weight:600;text-decoration:none;display:inline-block;position:relative;overflow:hidden}.jf-home .btn-white-ylw span{z-index:2;transition:all .4s;position:relative}.jf-home .btn-white-ylw:before{content:"";border-radius:50%;width:20px;height:20px;transition:all .6s;position:absolute;bottom:-20px;left:50%;transform:translate(-50%)scale(0)}.jf-home .btn-white-ylw:hover:before{transform:translate(-50%)scale(35)}.jf-home .btn-white-ylw{color:#fff;text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:700;font-family:var(--font-body);background:0 0;border:1px solid #fff;padding:16px 26px}.jf-home .btn-white-ylw:hover{border:1px solid gold}.jf-home .btn-white-ylw:before{background:gold}.jf-home .btn-white-ylw:hover span{z-index:5;color:#000!important}.jf-home .btn{font-family:var(--font-ui);letter-spacing:.12em;text-transform:uppercase;transition:transform .35s var(--ease), box-shadow .35s var(--ease), background .3s ease, color .3s ease;cursor:pointer;white-space:nowrap;border:1.5px solid #0000;border-radius:5px;align-items:center;gap:10px;padding:16px 20px;font-size:.78rem;font-weight:700;display:inline-flex}.jf-home .btn svg{width:14px;height:14px;transition:transform .35s var(--ease)}.jf-home .btn-primary{color:var(--navy);background:gold;border:none;position:relative;overflow:hidden;border-radius:0!important}.jf-home .btn-primary:before{content:"";opacity:0;z-index:-1;background:#1a1a2e;border-radius:50%;width:10px;height:10px;transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .6s cubic-bezier(.4,0,.2,1);position:absolute;bottom:-10px;left:50%;transform:translate(-50%)scale(1)}.jf-home .btn-primary:hover,.jf-home .btn-primary:focus-visible{color:#fff;transform:translateY(-3px)}.jf-home .btn-primary:hover:before,.jf-home .btn-primary:focus-visible:before{opacity:1;transform:translate(-50%)scale(70)}.jf-home .btn-primary:hover svg{transform:translate(4px)}.jf-home .btn-ghost{color:var(--white);background:0 0;border-color:#fff6}.jf-home .btn-ghost:hover{background:#ffffff1f;border-color:#fff;transform:translateY(-3px)}.jf-home .btn-outline-navy{border-color:var(--navy);color:var(--navy);background:0 0}.jf-home .btn-outline-navy:hover{background:var(--navy);color:var(--white);transform:translateY(-3px)}.jf-home .reveal{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(26px)}.jf-home .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.jf-home .reveal{opacity:1;transition:none;transform:none}.jf-home *{scroll-behavior:auto!important}}.jf-home .hero{min-height:calc(60svh - var(--jf-header-h,90px));color:var(--white);background-position:70%;background-repeat:no-repeat;background-size:cover;align-items:flex-end;max-width:1920px;margin:0 auto;padding-top:24px;display:flex;position:relative;overflow:hidden}.hero-image-mobile{margin-bottom:30px!important;display:block!important}.jf-home .hero:before{content:"";pointer-events:none;background-image:repeating-linear-gradient(115deg,#ffffff09 0 1px,#0000 1px 90px);position:absolute;inset:0}.jf-home .hero-glow{filter:blur(10px);background:radial-gradient(circle,#b2222259,#0000 65%);border-radius:50%;width:640px;height:640px;animation:14s ease-in-out infinite alternate drift;position:absolute;top:-160px;right:-160px}@keyframes drift{0%{transform:translate(0)}to{transform:translate(-30px,40px)}}.jf-home .hero-inner{padding-top:60px;padding-bottom:76px;position:relative}.jf-home .hero-grid{grid-template-columns:1fr;align-items:end;gap:40px;display:grid}@media (min-width:700px){.jf-home .hero-grid{grid-template-columns:1.15fr .85fr;gap:60px}.hero-image-mobile{display:none!important}.jf-home .hero-inner{padding-top:120px!important}.jf-home .hero{background-image:linear-gradient(90deg,#000000a6 0%,#00000080 35%,#0003 60%,#0000 82%),url(https://cms.juliettefoster.com/wp-content/uploads/2026/07/juliette-foster-website-home-image.webp)!important}}.jf-home .hero-kicker{align-items:center;gap:12px;margin-bottom:22px;display:flex}.jf-home .live-dot{background:var(--garnet);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse;box-shadow:0 0 #b22222b3}@keyframes pulse{0%{box-shadow:0 0 #b222228c}70%{box-shadow:0 0 0 10px #b2222200}to{box-shadow:0 0 #b2222200}}.jf-home .hero-kicker span{font-family:var(--font-ui);letter-spacing:.24em;text-transform:uppercase;color:#ffffffbf;font-size:.72rem}.jf-home .hero h1{color:var(--white);max-width:16ch;font-size:clamp(2.6rem,5.6vw,4.6rem)}.jf-home .hero h1 em{color:#e7c9c9;font-style:italic;font-weight:500}.jf-home .hero p.lede{color:#ffffffc7;max-width:46ch;margin-top:24px;font-size:1.08rem}.jf-home .hero-actions{flex-wrap:wrap;gap:16px;margin-top:36px;display:flex}.jf-home .hero-card{-webkit-backdrop-filter:blur(18px);border-radius:var(--radius-lg);background:#ffffff12;border:1px solid #ffffff2e;flex-direction:column;gap:22px;padding:32px;display:flex}.jf-home .hero-card .quote{font-family:var(--font-display);color:#fff;font-size:1.15rem;font-style:italic;line-height:1.5}.jf-home .hero-card .quote-by{font-family:var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:#fff9;font-size:.72rem}.jf-home .hero-stats{border-top:1px solid #ffffff29;grid-template-columns:repeat(3,1fr);gap:16px;padding-top:22px;display:grid}.jf-home .hero-stats .num{font-family:var(--font-display);color:var(--white);font-size:1.7rem}.jf-home .hero-stats .lbl{font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:#ffffff9e;margin-top:4px;font-size:.62rem}.jf-home .social-rail{flex-direction:column;gap:16px;padding:16px 10px;display:none;position:absolute;top:50%;right:0;transform:translateY(-50%)}@media (min-width:1300px){.jf-home .social-rail{display:flex}}.jf-home .social-rail a{color:#fff;border:1px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:.85rem;transition:all .3s;display:flex}.jf-home .social-rail a:hover{background:var(--garnet);border-color:var(--garnet);transform:translate(-4px)}.jf-home section{position:relative}.jf-home .section-pad{padding:70px 0}.jf-home .bg-paper{background:var(--paper)}.jf-home .bg-white{background:var(--white)}.jf-home .bg-ink{background:var(--ink);color:var(--white)}.jf-home .bg-ink h2{color:var(--white)}.jf-home .bg-ink p{color:#ffffffad}.jf-home .section-head{flex-direction:column;gap:18px;max-width:720px;margin-bottom:56px;display:flex}.jf-home .section-head.split{flex-flow:wrap;justify-content:space-between;align-items:flex-end;gap:24px;max-width:none}.jf-home .section-head.split .side-cta{margin-left:auto}@media (max-width:768px){.jf-home .section-head.split .side-cta{margin:0 auto!important}.jf-home .section-head div{text-align:center}.jf-home .eyebrow{justify-content:center}}.jf-home .about-grid{grid-template-columns:1fr;align-items:center;gap:60px;display:grid}@media (min-width:960px){.jf-home .about-grid{grid-template-columns:.85fr 1.15fr;gap:80px}.jf-home .btn{padding:16px 34px!important}}.jf-home .about-media{position:relative}.jf-home .about-photo{aspect-ratio:4/5;isolation:isolate;border-radius:28px;position:relative;overflow:hidden;transform:translateZ(0)}.jf-home .about-photo img{object-fit:cover;object-position:center 20%;width:100%;height:100%;transition:transform .6s var(--ease);border-radius:28px}.jf-home .about-photo .rec{font-family:var(--font-ui);letter-spacing:.16em;color:#fff;text-transform:uppercase;text-shadow:0 1px 6px #00000080;align-items:center;gap:8px;font-size:.68rem;display:flex;position:absolute;top:34px;left:34px}.jf-home .about-photo .rec i{background:var(--garnet);border-radius:50%;width:8px;height:8px}.jf-home .about-badge{background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-card);max-width:230px;padding:22px 26px;position:absolute;bottom:-28px;left:-28px}.jf-home .about-badge .num{font-family:var(--font-display);color:var(--garnet);font-size:2.1rem}.jf-home .about-badge .lbl{font-family:var(--font-ui);letter-spacing:.04em;color:var(--navy);margin-top:4px;font-size:.72rem}.jf-home .about-copy p+p{margin-top:18px}.jf-home .about-orgs{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:14px 0;margin-top:32px;padding-top:28px;display:flex}.jf-home .about-orgs .orgs-label{font-family:var(--font-ui);letter-spacing:.14em;color:var(--grey-text);text-transform:uppercase;white-space:nowrap;margin-right:22px;font-size:.66rem;font-weight:700}.jf-home .about-orgs .orgs-list{flex-wrap:wrap;align-items:center;gap:0;display:flex}.jf-home .about-orgs .org-logo{align-items:center;height:42px;padding:0 15px;display:flex;position:relative}.jf-home .about-orgs .org-logo:first-child{padding-left:0}.jf-home .about-orgs .org-logo:not(:last-child):after{content:"";background:var(--line);width:1px;height:22px;position:absolute;top:50%;right:0;transform:translateY(-50%)}.jf-home .about-orgs .org-logo img{object-fit:contain;width:auto;max-width:112px;height:auto;max-height:34px}.jf-home .about-actions{flex-wrap:wrap;gap:16px;margin-top:36px;display:flex}.jf-home .service-tabs-note{flex-wrap:wrap;gap:10px;margin-bottom:44px;display:flex}.jf-home .pill-tag{font-family:var(--font-ui);letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-pill);border:1px solid var(--line);color:var(--navy);padding:9px 18px;font-size:.72rem;font-weight:700}.jf-home .service-groups{grid-template-columns:1fr;gap:28px;display:grid}@media (min-width:840px){.jf-home .service-groups{grid-template-columns:repeat(3,1fr)}}.jf-home .service-group{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:transform .45s var(--ease), box-shadow .45s var(--ease);padding:38px 32px;position:relative;overflow:hidden}.jf-home .service-group:before{content:"";background:var(--garnet);transform-origin:0;height:4px;transition:transform .5s var(--ease);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.jf-home .service-group:hover{transform:translateY(-8px);box-shadow:0 30px 60px -24px #1a1a2e47}.jf-home .service-group:hover:before{transform:scaleX(1)}.jf-home .service-icon{background:var(--paper);width:54px;height:54px;color:var(--garnet);transition:background .4s var(--ease), transform .4s var(--ease);border-radius:16px;justify-content:center;align-items:center;margin-bottom:22px;display:flex}.jf-home .service-icon svg{width:26px;height:26px;transition:transform .4s var(--ease)}.jf-home .service-group:hover .service-icon{background:var(--garnet);color:#fff;transform:translateY(-2px)}.jf-home .service-group:hover .service-icon svg{transform:scale(1.1)rotate(-4deg)}.jf-home .service-group h3{margin-bottom:8px}.jf-home .service-group>p{margin-bottom:20px;font-size:.95rem}.jf-home .service-list li{font-family:var(--font-ui);color:var(--navy);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:12px 0;font-size:.86rem;font-weight:600;display:flex}.jf-home .service-list li:first-child{border-top:none;padding-top:0}.jf-home .service-list li a{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.jf-home .service-list li svg{width:13px;height:13px;color:var(--garnet);opacity:0;flex-shrink:0;transition:all .3s;transform:translate(-4px)}.jf-home .service-list li:hover svg{opacity:1;transform:translate(0)}.jf-home .service-list li:hover{color:var(--garnet-deep)}.jf-home .events-grid{grid-template-columns:1fr;gap:26px;display:grid}@media (min-width:900px){.jf-home .events-grid{grid-template-columns:repeat(3,1fr)}}.jf-home .event-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:transform .4s var(--ease), box-shadow .4s var(--ease);flex-direction:column;display:flex;overflow:hidden}.jf-home .event-card:hover{transform:translateY(-6px);box-shadow:0 30px 60px -24px #1a1a2e47}.jf-home .event-media{aspect-ratio:16/10;background:linear-gradient(140deg,#22243a,#1a1a2e 60%,#0f0f1c);align-items:flex-end;padding:20px;display:flex;position:relative}.jf-home .event-media img{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.jf-home .event-media:before{content:"";z-index:1;background:linear-gradient(#0f0f1c0d 45%,#0f0f1cbf 100%);position:absolute;inset:0}.jf-home .event-media .tag{z-index:2;font-family:var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:#fff;border-radius:var(--radius-pill);background:#b22222e6;padding:6px 12px;font-size:.65rem;position:relative}.jf-home .event-body{flex-direction:column;flex:1;gap:12px;padding:26px 28px 30px;display:flex}.jf-home .event-date{font-family:var(--font-ui);letter-spacing:.08em;color:var(--garnet);text-transform:uppercase;font-size:.72rem;font-weight:700}.jf-home .event-body h3{font-size:1.18rem}.jf-home .event-body p{flex:1;font-size:.92rem}.jf-home .event-link{font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--navy);align-items:center;gap:8px;margin-top:6px;font-size:.76rem;font-weight:700;display:inline-flex}.jf-home .event-link svg{width:12px;height:12px;transition:transform .3s}.jf-home .event-card:hover .event-link svg{transform:translate(5px)}.jf-home .swiper{width:100%;padding:20px 0}.jf-home .swiper-slide{width:auto!important}.jf-home .card{cursor:pointer;border-radius:12px;position:relative;overflow:hidden}.jf-home .card:before{content:"";z-index:2;pointer-events:none;background:linear-gradient(115deg,#0000 30%,#ffffff2e 48%,#0000 66%);transition:transform .8s;position:absolute;inset:0;transform:translate(-120%)}.jf-home .card img{object-fit:cover;will-change:transform;border-radius:12px;width:auto;height:300px;transition:transform .5s;display:block}.jf-home .card:hover:before{transform:translate(120%)}.jf-home .card:hover img{transform:scale(1.08)}.jf-home .blog-grid{grid-template-columns:1fr;gap:26px;display:grid}@media (min-width:900px){.jf-home .blog-grid{grid-template-columns:repeat(3,1fr)}}.jf-home .blog-card{height:320px;transition:transform .4s var(--ease), box-shadow .4s var(--ease);box-shadow:var(--shadow-card);border-radius:16px;position:relative;overflow:hidden}.jf-home .blog-card:hover{box-shadow:0 1px 2px #14171c0a,0 24px 48px -12px #14171c2e}.jf-home .blog-card img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .6s var(--ease)}.jf-home .blog-card:hover img{transform:scale(1.08)}.jf-home .blog-card .blog-overlay{background-image:linear-gradient(#16161600 0%,#161616 85%);padding:60px 20px 25px;position:absolute;bottom:0;left:0;right:0}.jf-home .blog-card h3{margin-bottom:20px;font-family:Playfair Display,serif;font-size:22px;line-height:1.25;transition:color .3s}.jf-home .blog-card a.blog-card-link{z-index:2;position:absolute;inset:0}.jf-home .cta-band{text-align:center;background:0 0;flex-direction:column;align-items:center;gap:20px;display:flex;position:relative}.jf-home .cta-band div{text-align:center;max-width:600px}.jf-home .cta-band h2{color:var(--navy);position:relative}.jf-home .cta-band p{color:var(--grey-text);position:relative}.jf-home .cta-band .hero-actions{justify-content:center;position:relative}.jf-home .cta-full-width{background:#d3d3d3;padding:90px 0}.jf-home .lift-in{transition:transform .3s var(--ease)}.jf-home .center{text-align:center}.jf-home .mx-auto{margin-left:auto;margin-right:auto}.jf-home .about-photo,.jf-home .event-media,.jf-home .gallery-item{position:relative;overflow:hidden}.jf-home .about-photo:after,.jf-home .event-media:after,.jf-home .gallery-item:after{content:"";pointer-events:none;z-index:3;transition:transform .9s var(--ease);background:linear-gradient(115deg,#0000 30%,#ffffff29 48%,#0000 66%);position:absolute;inset:0;transform:translate(-120%)}.jf-home .about-media:hover .about-photo:after,.jf-home .event-card:hover .event-media:after,.jf-home .gallery-item:hover:after{transform:translate(120%)}.jf-home a:focus-visible,.jf-home button:focus-visible,.jf-home input:focus-visible,.jf-home .burger:focus-visible{outline:2px solid var(--garnet);outline-offset:3px;border-radius:4px}@media (max-width:959px){.jf-home .hero{align-items:flex-end}.jf-home .hero-inner{padding-bottom:48px}.jf-home .hero h1{max-width:none}.jf-home .hero-stats{grid-template-columns:1fr;gap:14px}.jf-home .about-badge{max-width:200px;padding:16px 18px;bottom:-18px;left:12px}.jf-home .about-actions,.jf-home .hero-actions{width:100%}.jf-home .hero-actions .btn,.jf-home .hero-actions .btn-white-ylw,.jf-home .about-actions .btn{text-align:center;justify-content:center;width:100%}.jf-home .card img{height:220px}.jf-home .cta-full-width{padding:64px 0}.jf-home .section-pad{padding:56px 0}.jf-home .service-group{padding:30px 24px}}@media (max-width:640px){.jf-home .container{width:calc(100% - 40px)}.jf-home .hero h1{font-size:clamp(2.1rem,9vw,2.8rem)}.jf-home .blog-card{height:280px}.jf-home .blog-card h3{font-size:1.25rem}.jf-home .event-body{padding:22px 20px 24px}}.jf-home .service-groups>.reveal,.jf-home .events-grid>.reveal,.jf-home .blog-grid>.reveal,.jf-home .service-group,.jf-home .event-card,.jf-home .blog-card{height:100%}.jf-home .home-gallery-slider{width:100%;padding:20px 0}.jf-home .home-gallery-slider .swiper-slide{width:auto!important}.jf-home .hero{background-color:#100e18}.jf-home .bg-ink .eyebrow{color:var(--garnet)}.jf-home .bg-ink .eyebrow:before,.jf-home .bg-ink .eyebrow:after{background:var(--garnet)}.jf-home .hero-audio-btn{background-color:var(--navy);color:var(--white);cursor:pointer;z-index:100;transition:all .3s var(--ease);border:1px solid #ffffff4d;border-right:none;border-top-left-radius:30px;border-bottom-left-radius:30px;align-items:center;gap:10px;padding:10px 18px 10px 14px;display:flex;position:absolute;top:75%;right:0;transform:translateY(-50%);box-shadow:0 4px 15px #0000004d}.jf-home .hero-audio-btn:hover{background-color:var(--garnet);border-color:var(--garnet);padding-right:22px}.jf-home .hero-audio-btn.playing{background-color:var(--garnet);border-color:var(--garnet)}.jf-home .hero-audio-btn .icon-container{background-color:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .3s;display:flex}.jf-home .hero-audio-btn:hover .icon-container{background-color:#fff3}.jf-home .hero-audio-btn .audio-waves{align-items:flex-end;gap:3px;width:20px;height:16px;display:flex}.jf-home .hero-audio-btn .audio-bar{background-color:var(--jf-gold,gold);transform-origin:bottom;border-radius:1px;width:3px;height:100%;transition:height .3s}.jf-home .hero-audio-btn.playing .audio-bar{animation:1.2s ease-in-out infinite alternate bar-dance}.jf-home .hero-audio-btn.playing .audio-bar:first-child{animation-duration:.8s;animation-delay:.1s}.jf-home .hero-audio-btn.playing .audio-bar:nth-child(2){animation-duration:1.1s;animation-delay:.3s}.jf-home .hero-audio-btn.playing .audio-bar:nth-child(3){animation-duration:.9s;animation-delay:.5s}.jf-home .hero-audio-btn.playing .audio-bar:nth-child(4){animation-duration:.7s;animation-delay:.2s}@keyframes bar-dance{0%{transform:scaleY(.15)}to{transform:scaleY(1)}}.jf-home .hero-audio-btn .btn-text{font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--white);-webkit-user-select:none;user-select:none;font-size:.7rem;font-weight:700;transition:all .3s}@media (max-width:767px){.jf-home .hero-audio-btn{padding:8px 14px 8px 12px;top:30%}.jf-home .hero-audio-btn .btn-text{display:none}}
