/* Homepage layout. Scoped to avoid changing other public pages. */
@media(min-width:992px) and (max-width:1199px){.navbar-pelekat .navbar-brand{margin-right:12px}.navbar-pelekat .navbar-brand .brand-name{font-size:1.15rem}.navbar-pelekat .navbar-brand .brand-tagline{max-width:175px;white-space:normal;font-size:.55rem}.navbar-pelekat .navbar-nav .nav-link{font-size:.76rem;padding:.5rem .35rem!important}.navbar-pelekat .navbar-nav .btn{font-size:.76rem;padding:9px 13px!important;white-space:nowrap}}
.home-page{color:#1a1a1a;background:#fff}.home-page section{min-width:0}.home-page .row>*{min-width:0}.home-page .hero-section{position:relative;overflow:hidden;background:linear-gradient(125deg,#191919,#302316);color:white;padding:56px 0}.home-page .hero-section .container{position:relative;z-index:1}.home-page .hero-section .row{--bs-gutter-x:3.5rem}.home-page .hero-eyebrow{display:flex;align-items:center;gap:8px;color:#ffc18d;font-size:.73rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;line-height:1.7;margin:0 0 18px}.home-page .hero-title{font-size:clamp(2rem,3.1vw,3.25rem);line-height:1.2;letter-spacing:-.035em;margin:0 0 20px!important;overflow-wrap:break-word}.home-page .hero-section .lead{font-size:1rem;line-height:1.85;max-width:520px;color:#e4ded8;opacity:1!important}.home-page .hero-section .d-flex{justify-content:flex-start!important;gap:12px!important;margin-bottom:0!important}.home-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 18px;border-radius:10px;font-size:.88rem;font-weight:600;line-height:1.5;white-space:normal}.home-page .btn-pelekat,.home-page .btn-pelekat-hero{background:#ff8218;border:1px solid #ff8218;color:#1a1a1a}.home-page .btn-pelekat:hover,.home-page .btn-pelekat-hero:hover{background:#ff9a47;border-color:#ff9a47;color:#1a1a1a}.home-page .btn-outline-light{border:1px solid #ffffff80;color:white}.home-page .btn-outline-light:hover{background:#ffffff18;color:white}.home-page .hero-image-frame{position:relative;width:100%;margin:0}.home-page .hero-image{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:16px}.home-page .hero-banner-carousel{border-radius:16px;overflow:hidden;background:#111;border:1px solid #ffffff26;box-shadow:0 16px 40px #0003}.home-page .hero-banner-item{display:block;position:relative;overflow:hidden;text-decoration:none;border-radius:16px;background:#111;color:#fff}.home-page .hero-banner-img{width:100%;height:auto;aspect-ratio:5/3;object-fit:contain;display:block;background:#161616}.home-page .hero-banner-caption{display:block;padding:14px 58px 32px;min-height:72px;background:#111;text-align:center;line-height:1.6;font-size:.85rem;font-weight:500;overflow-wrap:anywhere}.home-page .carousel-control-prev,.home-page .carousel-control-next{width:44px;height:44px;top:calc((100% - 72px)/2 - 22px);bottom:auto;background:#0009;border:1px solid #ffffff50;border-radius:50%;opacity:1}.home-page .carousel-control-prev{left:10px}.home-page .carousel-control-next{right:10px}.home-page .carousel-control-prev-icon,.home-page .carousel-control-next-icon{width:20px;height:20px}.home-page .carousel-indicators{margin:0;bottom:3px;align-items:center;gap:0}.home-page .carousel-indicators [data-bs-target]{width:24px;height:4px;border-top:10px solid transparent;border-bottom:10px solid transparent;background-color:#fff;opacity:.5;border-radius:0}.home-page .carousel-indicators .active{background-color:#ff8218;opacity:1}.home-page .hero-banner-pause{display:flex;align-items:center;gap:6px;margin:8px auto 0;padding:6px 12px;min-height:44px;border:1px solid #ffffff40;border-radius:8px;background:transparent;color:#eee;font-size:.78rem}.home-page section.py-5{padding:64px 0!important}.home-page .section-title{margin-bottom:24px}.home-page .section-title h2{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:700;letter-spacing:-.03em;line-height:1.4;color:#1a1a1a}.home-page .section-title p{font-size:.92rem;line-height:1.8;margin:10px 0 0}.home-page .section-title.text-center::after{left:50%;transform:translateX(-50%)}.home-page .section-title.mb-5{margin-bottom:32px!important}.home-page .about-section .row{--bs-gutter-x:3.5rem}.home-page .about-section p{font-size:.94rem;line-height:1.9!important;text-align:left!important;color:#60656c}.home-page .about-photo{margin:0;position:relative;overflow:hidden;border-radius:16px}.home-page .about-photo img{display:block;width:100%;height:360px;object-fit:cover}.home-page .about-photo figcaption{position:absolute;inset:auto 0 0;padding:44px 20px 18px;color:white;background:linear-gradient(transparent,#000c);font-size:.84rem}.home-page .services-section,.home-page .gallery-preview-section{background:#faf8f5!important}.home-page .card-pelekat{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e7e7e7;border-radius:16px;overflow:hidden;box-shadow:none;transition:box-shadow .2s,transform .2s}.home-page .card-pelekat:hover{transform:translateY(-3px);box-shadow:0 12px 26px #0000000d}.home-page .card-body{flex:1;min-width:0}.home-page .card-body h3{font-size:1.03rem;line-height:1.6!important;overflow-wrap:anywhere}.home-page .card-body p{font-size:.87rem;line-height:1.85!important;overflow-wrap:anywhere}.home-page .services-section .card-body{text-align:left!important;padding:26px!important}.home-page .services-section .card-body p{margin-bottom:0}.home-page .home-icon-circle{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#fff0e3!important;color:#a94c00!important;font-size:1.4rem;margin:0 0 20px}.home-page .news-section .row{--bs-gutter-x:20px}.home-page .news-section .card-body{padding:20px!important}.home-page .home-program-poster-wrap{position:relative;aspect-ratio:4/5;width:100%;background:#f3f4f6;overflow:hidden;flex-shrink:0}.home-page .home-program-poster{width:100%;height:100%;object-fit:contain;display:block}.home-page .home-news-ribbon{position:absolute;top:12px;right:12px;border-radius:30px;padding:5px 10px;background:#1a1a1a;color:#fff;font-size:.7rem;font-weight:600}.home-page .home-program-status{display:inline-flex;align-items:center;align-self:flex-start;gap:5px;max-width:100%;border-radius:6px;padding:5px 9px;color:white;font-size:.72rem;line-height:1.6;margin-bottom:14px;overflow-wrap:anywhere}.home-page .news-section .card-body small{font-size:.76rem}.home-page .news-section .card-body .btn{width:100%}.home-page .gallery-item{position:relative;display:block;overflow:hidden;border-radius:14px;text-decoration:none;background:#eee}.home-page .gallery-item img{display:block;width:100%;height:280px;object-fit:cover;transition:transform .25s}.home-page .gallery-item-caption{position:absolute;inset:auto 0 0;color:#fff;background:linear-gradient(transparent,#000d);padding:40px 18px 18px;line-height:1.6;font-size:.9rem;font-weight:600;opacity:1;transform:none}.home-page .gallery-item:hover img{transform:scale(1.03)}.home-page .photo-credits{max-width:850px;margin:20px auto 0;text-align:center;font-size:.72rem;line-height:1.85;color:#656565}.home-page .photo-credits a{color:#515151;text-underline-offset:3px}.home-page .cta-section{position:relative;overflow:hidden;background:#ff8218!important;color:#1a1a1a!important}.home-page .cta-section h2{font-size:clamp(1.6rem,2.5vw,2.2rem);line-height:1.4}.home-page .cta-section .lead{font-size:1rem;line-height:1.8;max-width:660px;margin-left:auto;margin-right:auto}.home-page .cta-section .btn{border-radius:10px!important;padding:12px 22px!important;font-size:.9rem}.home-page .cta-section .btn-light{color:#1a1a1a!important;background:#fff;border-color:#fff}.home-page .cta-section .btn-outline-light{color:#1a1a1a;border-color:#1a1a1a;background:transparent}.home-page .cta-section .btn-outline-light:hover{background:#ffffff40}.home-page a:focus-visible,.home-page button:focus-visible{outline:3px solid #aa4b00;outline-offset:4px}.home-page .hero-section a:focus-visible,.home-page .hero-section button:focus-visible{outline-color:#ffc18d}.home-page .hero-pollen,.home-page .hero-shine{position:absolute;inset:0;pointer-events:none;overflow:hidden}.home-page .hero-shine{background:radial-gradient(ellipse at 55% 50%,#ff82181c,transparent 60%)}
@media(min-width:992px) and (max-width:1199px){.home-page .news-section .col-lg-3{width:50%}.home-page .hero-section .row,.home-page .about-section .row{--bs-gutter-x:2rem}.home-page .hero-title{font-size:2.15rem}.home-page .hero-section .btn{padding:10px 13px;font-size:.8rem}}
@media(max-width:991px){.home-page .hero-section{padding:36px 0}.home-page .hero-section .row,.home-page .about-section .row{--bs-gutter-x:1.5rem}.home-page .hero-section .mt-5{margin-top:28px!important}.home-page .hero-title{max-width:680px;font-size:2.4rem}.home-page .hero-section .lead{max-width:620px}.home-page .hero-image-frame{max-width:680px;margin:auto}.home-page .about-photo img{height:320px}.home-page section.py-5{padding:44px 0!important}.home-page .services-section .card-body{padding:20px!important}.home-page .gallery-item img{height:240px}}
@media(max-width:767px){.home-page .services-section .card-body{display:grid;grid-template-columns:44px minmax(0,1fr);gap:0 14px}.home-page .home-icon-circle{width:44px;height:44px;grid-row:1/3;margin:0}.home-page .services-section .card-body h3{margin-bottom:8px!important}.home-page .services-section .card-body p{grid-column:2}.home-page .services-section .mb-4{margin-bottom:14px!important}.home-page .gallery-preview-section .col-12 img{height:280px}.home-page .gallery-preview-section .col-6 img{height:220px}}
@media(max-width:575px){.home-page .container{padding-left:16px;padding-right:16px}.home-page .hero-section{padding:28px 0 32px}.home-page .hero-eyebrow{font-size:.64rem;letter-spacing:.05em;margin-bottom:14px}.home-page .hero-title{font-size:clamp(1.8rem,7.3vw,2.5rem);margin-bottom:16px!important}.home-page .hero-section .lead{font-size:.9rem;line-height:1.8}.home-page .hero-section .btn{padding:11px 13px;font-size:.8rem}.home-page .hero-section .d-flex{gap:10px!important}.home-page .hero-section .mt-5{margin-top:24px!important}.home-page .hero-banner-caption{font-size:.8rem;padding:12px 20px 32px}.home-page section.py-5{padding:32px 0!important}.home-page .section-title h2{font-size:1.4rem}.home-page .section-title.mb-5{margin-bottom:24px!important}.home-page .section-title p{font-size:.85rem}.home-page .about-photo img{height:230px}.home-page .about-section p{font-size:.88rem}.home-page .about-section .mb-4{margin-bottom:24px!important}.home-page .card-body h3{font-size:1rem}.home-page .card-body p{font-size:.86rem}.home-page .news-section .card-body{padding:20px!important}.home-page .news-section .card-body h3{font-size:1.05rem}.home-page .home-program-status{font-size:.76rem}.home-page .news-section .card-body small{font-size:.8rem}.home-page .home-program-poster-wrap{aspect-ratio:4/5}.home-page .gallery-preview-section .row{--bs-gutter-x:12px;--bs-gutter-y:12px}.home-page .gallery-preview-section .col-12 img{height:240px}.home-page .gallery-preview-section .col-6 img{height:180px}.home-page .gallery-item-caption{font-size:.78rem;padding:32px 12px 12px}.home-page .photo-credits{font-size:.7rem;text-align:left}.home-page .cta-section .lead{font-size:.9rem}.home-page .cta-section .d-flex{gap:10px!important}.home-page .cta-section .btn{flex:1 1 150px;font-size:.84rem;padding:12px 14px!important}}
@media(prefers-reduced-motion:reduce){.home-page *,.home-page *::before,.home-page *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Compact program cards on phones. */
@media(max-width:575.98px){
 .home-page .news-section .row{--bs-gutter-x:12px}
 .home-page .news-section .row>.col-lg-3{width:50%;margin-bottom:12px!important}
 .home-page .news-section .card-pelekat{border-radius:12px}
 .home-page .news-section .card-body{padding:12px!important}
 .home-page .news-section .home-program-poster-wrap{aspect-ratio:4/5}
 .home-page .news-section .home-news-ribbon{top:7px;right:7px;font-size:.62rem;padding:3px 7px}
 .home-page .news-section .home-program-status{font-size:.68rem;padding:4px 6px;line-height:1.4;margin-bottom:9px;gap:4px}
 .home-page .news-section .home-program-status i{display:none}
 .home-page .news-section .card-body small{font-size:.68rem;line-height:1.5}
 .home-page .news-section .card-body h3{font-size:.82rem;line-height:1.55!important;margin-bottom:8px!important}
 .home-page .news-section .card-body p{font-size:.75rem;line-height:1.6!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin-bottom:12px!important}
 .home-page .news-section .card-body .btn{min-height:44px;font-size:.72rem;padding:8px 5px;gap:4px}
 .home-page .news-section .text-center.mt-4{margin-top:16px!important}
}

/* Restore the original homepage hero and banner presentation. */
.home-page .hero-section .btn{display:inline-block;line-height:1.5;white-space:normal}
.home-page .hero-banner-carousel{border:0;box-shadow:none}
.home-page .hero-banner-caption{min-height:0}
.home-page .hero-banner-pause{display:none}
.home-page .hero-shine{background:none}
.home-page .carousel-control-prev,.home-page .carousel-control-next{position:absolute;top:0;bottom:0;width:15%;height:auto;background:transparent;border:0;border-radius:0;opacity:.5}
.home-page .carousel-control-prev{left:0}.home-page .carousel-control-next{right:0}
.home-page .carousel-control-prev:hover,.home-page .carousel-control-next:hover{opacity:.9}
.home-page .carousel-control-prev-icon,.home-page .carousel-control-next-icon{width:2rem;height:2rem}
.home-page .carousel-indicators{bottom:0;margin-right:15%;margin-left:15%;gap:0}
.home-page .hero-section .hero-title{overflow-wrap:normal}
.home-page .hero-section{
        position: relative;
        background: linear-gradient(135deg, #1a1a1a 0%, #2d2114 100%);
        padding: 110px 0 90px;
        color: white;
        overflow: hidden;
    }
.home-page .hero-pattern{
        position: absolute;
        inset: 0;
        opacity: 0.08;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='100' viewBox='0 0 56 100'%3E%3Cpath d='M28 0L56 16.5V49.5L28 66L0 49.5V16.5Z' fill='none' stroke='%23FF8218' stroke-width='1.5'/%3E%3Cpath d='M28 66L56 82.5V100M28 66L0 82.5V100' fill='none' stroke='%23FF8218' stroke-width='1.5'/%3E%3C/svg%3E");
        background-size: 56px 100px;
    }
.home-page .hero-section .container{
        position: relative;
        z-index: 1;
    }
.home-page .hero-title{
        font-size: clamp(2rem, 1.3rem + 3vw, 3.5rem);
        line-height: 1.15;
    }
.home-page .hero-wave{
        position: absolute;
        left: 0;
        right: 0;
        bottom: -1px;
        line-height: 0;
    }
.home-page .hero-wave svg{
        width: 100%;
        height: 50px;
        display: block;
    }
.home-page .hero-wave path{
        fill: var(--pelekat-white, #fff);
    }
.home-page .hero-eyebrow{
        display: inline-flex;
        align-items: center;
        gap: 0.5rem;
        background: rgba(255, 130, 24, 0.15);
        border: 1px solid rgba(255, 130, 24, 0.4);
        color: #FF9A47;
        font-size: 0.8rem;
        font-weight: 600;
        padding: 0.4rem 0.9rem;
        border-radius: 50px;
    }
.home-page .btn-pelekat-hero{
        background: linear-gradient(135deg, #FF8218 0%, #FF9A47 100%);
        color: white;
        border: none;
        font-weight: 600;
        padding: 0.8rem 2rem;
        border-radius: 50px;
        transition: all 0.3s ease;
    }
.home-page .btn-pelekat-hero:hover{
        color: white;
        transform: translateY(-2px);
        box-shadow: 0 8px 20px rgba(255, 130, 24, 0.4);
    }
.home-page .hero-stats{
        max-width: 380px;
        border-top: 1px solid rgba(255, 255, 255, 0.15);
        padding-top: 1.5rem;
    }
.home-page .hero-stat-number{
        font-size: 1.6rem;
        font-weight: 700;
        color: #FF8218;
        line-height: 1.1;
    }
.home-page .hero-stat-label{
        font-size: 0.78rem;
        opacity: 0.75;
    }
.home-page .hero-image-frame{
        position: relative;
        display: inline-block;
        animation: float 4s ease-in-out infinite;
    }
.home-page .hero-image-frame::before{
        content: '';
        position: absolute;
        inset: -14px;
        border: 2px solid rgba(255, 130, 24, 0.5);
        border-radius: 24px;
        z-index: -1;
    }
.home-page .hero-image{
        max-width: 460px;
        width: 100%;
        border-radius: 20px;
        box-shadow: 0 25px 60px rgba(0, 0, 0, 0.5);
    }
.home-page .hero-floating-badge{
        position: absolute;
        left: -30px;
        bottom: 30px;
        align-items: center;
        gap: 0.7rem;
        background: white;
        color: #1a1a1a;
        padding: 0.8rem 1.2rem;
        border-radius: 16px;
        box-shadow: 0 15px 35px rgba(0, 0, 0, 0.25);
    }
.home-page .hero-floating-badge i{
        font-size: 1.6rem;
        color: #FF8218;
    }
.home-page .hero-floating-badge strong{
        display: block;
        font-size: 1.1rem;
        line-height: 1.2;
    }
.home-page .hero-floating-badge span{
        display: block;
        font-size: 0.72rem;
        color: #6c757d;
    }
@keyframes float{
        0%, 100% { transform: translateY(0px); }
        50% { transform: translateY(-16px); }
    }
@media (max-width: 991.98px){.home-page .hero-section{ padding: 70px 0 60px; text-align: center; }
.home-page .hero-stats{ margin: 0 auto; }
}
@media (max-width: 575.98px){.home-page .hero-section{ padding: 56px 0 50px; }
.home-page .hero-image{ max-width: 320px; }
}
@media (prefers-reduced-motion: reduce){.home-page .hero-image-frame{ animation: none; }
}
.home-page .hero-section{ background: linear-gradient(135deg, #1a1a1a, #2d2114); color: #ffffff; padding: 24px 0 28px; }
.home-page .hero-pattern,.home-page .hero-wave{ display: none; }
.home-page .hero-section .row{ --bs-gutter-x: 4rem; }
.home-page .hero-eyebrow{ background: transparent; border: 0; border-radius: 0; padding: 0; color: #FF9A47; font-size: .73rem; line-height: 1.7; text-transform: uppercase; letter-spacing: .08em; }
.home-page .hero-title{ font-size: clamp(2rem, 3vw, 2.85rem); letter-spacing: -.055em; line-height: 1.12; margin-top: 10px !important; margin-bottom: 14px !important; }
.home-page .hero-section .d-flex.mb-5{ margin-bottom: 16px !important; }
.home-page .hero-section .lead.mb-4{ margin-bottom: 16px !important; line-height: 1.65; }
.home-page .hero-title span{ color: #FF8218 !important; }
.home-page .hero-section .lead{ font-size: 1rem; line-height: 1.9; max-width: 490px; opacity: 1 !important; color: #dedede; }
.home-page .hero-section .btn{ border-radius: 10px !important; padding: .9rem 1.3rem !important; font-size: .9rem; min-height: 48px; }
.home-page .btn-pelekat-hero{ background: #FF8218; color: #fff; box-shadow: none; border: 1px solid #FF8218; border-radius: 9px; }
.home-page .btn-pelekat-hero:hover{ background: #E67316; color: #fff; box-shadow: 0 5px 15px #193b301a; }
.home-page .hero-section .btn-outline-light{ color: #ffffff; border: 1px solid #ffffff80; background: transparent; }
.home-page .hero-section .btn-outline-light:hover{ background: #ffffff18; }
.home-page .hero-stats{ max-width: 440px; border-color: #ffffff26; padding-top: 10px; --bs-gutter-y: 8px; }
.home-page .hero-stat-number{ color: #FF8218; font-size: 1.8rem; letter-spacing: -.04em; }
.home-page .hero-stat-label{ color: #cccccc; opacity: 1; margin-top: 7px; font-size: .75rem; }
.home-page .hero-image-frame{ display: block; animation: none; margin-left: 10px; }
.home-page .hero-image-frame::before{ inset: 18px -14px -18px 22px; border: 0; background: #FF821833; border-radius: 20px; }
.home-page .hero-image{ width: 100%; max-width: none; height: 300px; object-fit: cover; border-radius: 20px; box-shadow: none; }
.home-page .hero-floating-badge{ left: -25px; bottom: 25px; border-radius: 12px; padding: 17px 22px; box-shadow: 0 8px 32px #193b301c; }
.home-page .hero-floating-badge i{ color: #FF8218; }
.home-page .hero-floating-badge strong{ font-size: .85rem; }
.home-page .hero-floating-badge span{ margin-top: 5px; }
@media (max-width: 1199.98px) and (min-width: 992px){.home-page .hero-image{ height: 290px; }
}
@media (max-width: 991.98px){.home-page .hero-section{ padding: 22px 0 28px; text-align: left; }
.home-page .hero-section .row{ --bs-gutter-x: 1.5rem; }
.home-page .hero-section .lead{ max-width: 620px; }
.home-page .hero-section .d-flex{ justify-content: flex-start !important; }
.home-page .hero-stats{ margin: 0; }
.home-page .hero-image-frame{ margin: 0 14px 0 0; }
.home-page .hero-image{ height: 220px; border-radius: 16px; }
.home-page .hero-section .mt-5{ margin-top: 16px !important; }
}
@media (max-width: 575.98px){.home-page .hero-section{ padding-top: 18px; padding-bottom: 26px; }
.home-page .hero-eyebrow{ font-size: .65rem; letter-spacing: .045em; }
.home-page .hero-title{ font-size: clamp(1.85rem, 7.2vw, 2.3rem); margin-bottom: 12px !important; }
.home-page .hero-section .lead{ font-size: .9rem; line-height: 1.8; }
.home-page .hero-section .d-flex.gap-3{ gap: 10px !important; margin-bottom: 14px !important; }
.home-page .hero-section .btn{ flex: 1 1 140px; font-size: .8rem; padding: .8rem .6rem !important; }
.home-page .hero-section .mt-5{ margin-top: 16px !important; }
.home-page .hero-image{ height: 170px; }
.home-page .hero-stat-number{ font-size: 1.5rem; }
.home-page .hero-stat-label{ font-size: .68rem; }
}
@media (max-width: 575.98px){.home-page .hero-section{ padding: 14px 0 22px; }
.home-page .hero-eyebrow{ font-size: .6rem; line-height: 1.5; }
.home-page .hero-title{ font-size: clamp(1.7rem, 6.8vw, 2.1rem); margin-top: 8px !important; margin-bottom: 10px !important; }
.home-page .hero-section .lead.mb-4{ font-size: .8rem; line-height: 1.6; margin-bottom: 12px !important; }
.home-page .hero-section .d-flex.gap-3{ gap: 8px !important; margin-bottom: 10px !important; }
.home-page .hero-section .btn{ flex: 0 1 auto; min-height: 38px; font-size: .7rem; padding: 8px 14px !important; }
.home-page .hero-stats{ padding-top: 6px; --bs-gutter-y: 6px; }
.home-page .hero-stat-number{ font-size: 1.2rem; }
.home-page .hero-stat-label{ margin-top: 4px; font-size: .65rem; }
.home-page .hero-section .mt-5{ margin-top: 12px !important; }
.home-page .hero-image{ height: 140px; border-radius: 12px; }
.home-page .hero-image-frame::before{ inset: 10px -8px -8px 14px; border-radius: 12px; }
}
.home-page .hero-section .btn{ font-weight: 600; }
.home-page .hero-section .lead.mb-4{ margin-bottom: 20px !important; }
.home-page .hero-section .d-flex.mb-5{ margin-bottom: 26px !important; }
.home-page .hero-stats{ max-width: 320px; }
.home-page .hero-stat-number{ font-size: 2.1rem; }
.home-page .hero-image{ height: 360px; }
.home-page .hero-banner-carousel,.home-page .hero-banner-item{
    display: block;
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    text-decoration: none;
    background: #1a1a1a;
}
.home-page .hero-banner-img{
    width: 100%;
    aspect-ratio: 5 / 3;
    height: auto;
    object-fit: cover;
    display: block;
}
.home-page .hero-banner-caption{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 46px 26px 18px;
    color: #ffffff;
    background: linear-gradient(transparent, #000000cc);
    font-size: .95rem;
    font-weight: 600;
    text-align: left;
}
.home-page .hero-banner-carousel .carousel-indicators{ margin-bottom: .6rem; }
.home-page .hero-banner-carousel .carousel-indicators [data-bs-target]{
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 0;
    background: #ffffff;
    opacity: .5;
}
.home-page .hero-banner-carousel .carousel-indicators .active{ opacity: 1; background: #FF8218; }
@media (max-width: 991.98px){.home-page .hero-banner-carousel,.home-page .hero-banner-item{ border-radius: 16px; }
.home-page .hero-banner-caption{ padding: 36px 18px 14px; font-size: .85rem; }
}
@media (max-width: 575.98px){.home-page .hero-banner-carousel,.home-page .hero-banner-item{ border-radius: 12px; }
.home-page .hero-banner-caption{ padding: 28px 14px 10px; font-size: .78rem; }
}
.home-page .hero-section{ position: relative; overflow: hidden; }
.home-page .hero-section .container{ position: relative; z-index: 1; }
.home-page .hero-pollen{
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}
.home-page .hero-pollen span{
    position: absolute;
    bottom: -14px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #FF8218;
    opacity: 0;
    filter: blur(0.5px);
    animation-name: heroPollenRise;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}
@keyframes heroPollenRise{
    0%   { transform: translate3d(0, 0, 0) scale(.55); opacity: 0; }
    10%  { opacity: .6; }
    75%  { opacity: .3; }
    100% { transform: translate3d(var(--dx, 0px), -440px, 0) scale(1); opacity: 0; }
}
.home-page .hero-pollen span:nth-child(1){ left:  4%; width: 5px; height: 5px; --dx:  22px; animation-duration: 14s; animation-delay:  0s; }
.home-page .hero-pollen span:nth-child(2){ left: 11%; width: 8px; height: 8px; --dx: -18px; animation-duration: 19s; animation-delay:  3s; }
.home-page .hero-pollen span:nth-child(3){ left: 19%; width: 4px; height: 4px; --dx:  30px; animation-duration: 11s; animation-delay:  6s; }
.home-page .hero-pollen span:nth-child(4){ left: 26%; width: 7px; height: 7px; --dx: -25px; animation-duration: 17s; animation-delay:  1s; }
.home-page .hero-pollen span:nth-child(5){ left: 34%; width: 5px; height: 5px; --dx:  14px; animation-duration: 13s; animation-delay:  8s; }
.home-page .hero-pollen span:nth-child(6){ left: 41%; width: 9px; height: 9px; --dx: -30px; animation-duration: 21s; animation-delay:  4s; }
.home-page .hero-pollen span:nth-child(7){ left: 48%; width: 4px; height: 4px; --dx:  26px; animation-duration: 12s; animation-delay: 10s; }
.home-page .hero-pollen span:nth-child(8){ left: 56%; width: 6px; height: 6px; --dx: -12px; animation-duration: 16s; animation-delay:  2s; }
.home-page .hero-pollen span:nth-child(9){ left: 63%; width: 8px; height: 8px; --dx:  20px; animation-duration: 20s; animation-delay:  7s; }
.home-page .hero-pollen span:nth-child(10){ left: 71%; width: 5px; height: 5px; --dx: -28px; animation-duration: 15s; animation-delay: 11s; }
.home-page .hero-pollen span:nth-child(11){ left: 78%; width: 7px; height: 7px; --dx:  16px; animation-duration: 18s; animation-delay:  5s; }
.home-page .hero-pollen span:nth-child(12){ left: 85%; width: 4px; height: 4px; --dx: -22px; animation-duration: 10s; animation-delay:  9s; }
.home-page .hero-pollen span:nth-child(13){ left: 91%; width: 6px; height: 6px; --dx:  24px; animation-duration: 17s; animation-delay: 13s; }
.home-page .hero-pollen span:nth-child(14){ left: 96%; width: 5px; height: 5px; --dx: -16px; animation-duration: 12s; animation-delay:  6s; }
@media (prefers-reduced-motion: reduce){.home-page .hero-pollen span{ opacity: .28; }
}
.home-page .hero-shine{
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}
.home-page .hero-shine::before{
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 55vw;
    height: 55vw;
    max-width: 620px;
    max-height: 620px;
    border-radius: 50%;
    background: radial-gradient(circle,
        rgba(255, 154, 71, .35) 0%,
        rgba(255, 130, 24, .18) 40%,
        transparent 70%);
    filter: blur(40px);
    transform: translate(-70%, -60%);
    animation: heroGlowDrift 16s ease-in-out infinite;
}
@keyframes heroGlowDrift{
    0%   { transform: translate(-70%, -60%); }
    25%  { transform: translate(-30%, -70%); }
    50%  { transform: translate(-20%, -30%); }
    75%  { transform: translate(-60%, -20%); }
    100% { transform: translate(-70%, -60%); }
}

.home-page .hero-section .hero-eyebrow{display:inline-flex}
@media(prefers-reduced-motion:reduce){.home-page .hero-pollen span{opacity:.28}}

/* Phones: the about photo pushes the text a screen down, so hide it. */
@media(max-width:575.98px){.home-page .about-photo{display:none}
 .home-page .about-section .col-lg-6.mb-4{margin-bottom:0!important}}
