/* Nira 1.8.2: scoped hero, carousel controls, footer texture and article ToC. */
.nira-hero{position:relative;background:linear-gradient(145deg,#f5f8f3 0%,#fbfcfa 65%,#fff 100%);padding:60px 0 72px;border-bottom:1px solid #eef2eb}
.nira-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:clamp(32px,5vw,88px)}
.nira-hero-copy{min-width:0}.nira-hero-eyebrow{display:inline-flex;align-items:center;gap:10px;color:#4c734c;font-size:13px;font-weight:800;line-height:1.9;margin:0 0 22px}.nira-hero-eyebrow:before{content:"";width:26px;height:2px;background:#649064;flex-shrink:0}
.nira-hero-heading{font-size:clamp(32px,3.2vw,52px);font-weight:900;line-height:1.45;letter-spacing:-.7px;color:#1f3028;margin:0 0 22px;max-width:660px}.nira-hero-heading .nira-hero-location{color:#649064}.nira-hero-description{text-align:justify;text-align-last:right;font-size:16px;font-weight:500;line-height:2.05;color:#59645d;margin:0 0 24px;max-width:660px}
.nira-hero-search{position:relative;z-index:20;margin:0 0 22px;max-width:660px}.nira-hero-search-field{position:relative;display:flex;align-items:center;background:#fff;border:1px solid #dde5d9;border-radius:16px;box-shadow:0 5px 18px #1f302805}.nira-hero-search-field:focus-within{border-color:#649064;box-shadow:0 0 0 3px #64906414}.nira-hero-search-field input{width:100%;min-width:0;height:56px;padding:0 48px;border:0;outline:0;background:transparent;color:#374151;font:inherit;font-size:14px}.nira-hero-search-field input::placeholder{color:#919a92}.nira-hero-search-field button{position:absolute;right:4px;width:40px;height:44px;color:#649064;display:flex;align-items:center;justify-content:center}.nira-hero-spinner{position:absolute;left:16px;width:18px;height:18px;border:2px solid #cddacb;border-top-color:#649064;border-radius:50%;animation:nira-search-spin .7s linear infinite;pointer-events:none}.nira-hero-search-results{position:absolute;top:100%;left:0;right:0;margin-top:10px;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 16px 38px #1f302818;max-height:400px;overflow:hidden;text-align:right}
.nira-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 18px}.nira-hero-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:12px 24px;border-radius:14px;font-size:15px;font-weight:800;transition:background-color .2s,color .2s,box-shadow .2s,transform .2s}.nira-hero-button-primary{background:#649064;color:#fff;box-shadow:0 6px 16px #64906426}.nira-hero-button-primary:hover{background:#4c734c;transform:translateY(-2px);box-shadow:0 10px 20px #64906426}.nira-hero-button-secondary{color:#435448;background:#fff;border:1px solid #dde5d9}.nira-hero-button-secondary:hover{background:#f1f5ee;transform:translateY(-2px)}.nira-hero-note{display:flex;align-items:center;gap:8px;font-size:12px;color:#7a837b;line-height:1.9;margin:0}.nira-hero-note i{color:#649064}
.nira-hero-visual{position:relative;min-width:0;padding:12px 12px 0;max-width:520px;width:100%;justify-self:center}.nira-hero-visual:before{content:"";position:absolute;inset:0 0 72px 28px;border:1px solid #dce6d6;border-radius:40px 40px 40px 100px;pointer-events:none}.nira-hero-image-frame{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:32px 32px 32px 90px;background:#e6ece3;box-shadow:0 18px 45px #30472f0d}.nira-hero-image{display:block;width:100%;height:100%;object-fit:cover}.nira-hero-highlights{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 6px 0}.nira-hero-highlight{display:flex;align-items:center;gap:12px;padding:0 6px}.nira-hero-highlight+.nira-hero-highlight{border-right:1px solid #dce6d6;padding-right:22px}.nira-hero-highlight>i{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 auto;color:#649064;background:#edf3e8;border-radius:14px;font-size:20px}.nira-hero-highlight p{font-size:14px;font-weight:800;color:#2f4135;line-height:1.8;margin:0}.nira-hero-highlight span{font-size:11px;color:#7a837b}
.nira-hero :is(a,button,input):focus-visible{outline:2px solid #4c734c;outline-offset:4px}
@media(max-width:1023px){.nira-hero{padding:36px 0 48px}.nira-hero-grid{grid-template-columns:minmax(0,1fr);gap:32px}.nira-hero-copy{max-width:700px}.nira-hero-heading{font-size:36px;max-width:580px}.nira-hero-visual{max-width:480px}.nira-hero-description{font-size:15px}.nira-hero-eyebrow{margin-bottom:16px}}
@media(max-width:479px){.nira-hero{padding-top:28px}.nira-hero-heading{font-size:30px;line-height:1.5;letter-spacing:-.3px;margin-bottom:16px}.nira-hero-eyebrow{font-size:11px;gap:8px}.nira-hero-eyebrow:before{width:18px}.nira-hero-description{font-size:14px;line-height:2}.nira-hero-search-field input{font-size:12px;height:54px;padding-left:34px}.nira-hero-actions{gap:10px}.nira-hero-button{padding:12px 16px;font-size:13px;flex:1}.nira-hero-note{font-size:11px;align-items:flex-start}.nira-hero-note i{margin-top:4px}.nira-hero-visual{padding:8px 8px 0}.nira-hero-visual:before{border-radius:28px 28px 28px 72px}.nira-hero-image-frame{border-radius:22px 22px 22px 64px}.nira-hero-highlights{gap:8px;margin-top:16px}.nira-hero-highlight{gap:8px;padding:0}.nira-hero-highlight+.nira-hero-highlight{padding-right:12px}.nira-hero-highlight>i{width:36px;height:36px;font-size:17px;border-radius:12px}.nira-hero-highlight p{font-size:12px}.nira-hero-highlight span{font-size:10px}}
/* Pagination belongs below the cards, including before Swiper initializes. */
:is(.conditionsSwiper,.gallerySwiper,.testimonialSwiper,.blogSwiper){padding-bottom:0!important}
:is(.conditionsSwiper,.gallerySwiper,.testimonialSwiper,.blogSwiper)>.swiper-pagination{position:relative!important;inset:auto!important;transform:none!important;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:2px;min-height:32px;margin:22px 0 0!important;width:100%!important;line-height:1}
:is(.conditionsSwiper,.gallerySwiper,.testimonialSwiper,.blogSwiper) .swiper-pagination-bullet{display:inline-flex;align-items:center;justify-content:center;width:28px;height:32px;margin:0!important;background:transparent!important;border-radius:10px;opacity:1;transition:width .25s ease}
:is(.conditionsSwiper,.gallerySwiper,.testimonialSwiper,.blogSwiper) .swiper-pagination-bullet:before{content:"";width:7px;height:7px;border-radius:99px;background:#bdcbbb;transition:width .25s ease,background-color .25s ease;pointer-events:none}
:is(.conditionsSwiper,.gallerySwiper,.testimonialSwiper,.blogSwiper) .swiper-pagination-bullet-active{width:38px}
:is(.conditionsSwiper,.gallerySwiper,.testimonialSwiper,.blogSwiper) .swiper-pagination-bullet-active:before{width:25px;background:#649064}
#gallery .swiper-pagination-bullet:before{background:#ffffff59}#gallery .swiper-pagination-bullet-active:before{background:#a8cba2}
:is(.conditionsSwiper,.gallerySwiper,.testimonialSwiper,.blogSwiper) .swiper-pagination-bullet:focus-visible{outline:2px solid #649064;outline-offset:1px}
:is(.conditionsSwiper,.gallerySwiper,.testimonialSwiper,.blogSwiper)>.swiper-pagination-lock{display:none!important}

@media(prefers-reduced-motion:reduce){.nira-hero *,[class*="Swiper"] .swiper-pagination-bullet,[class*="Swiper"] .swiper-pagination-bullet:before{transition:none!important}}

/* Keep the complete hero sentence on exactly two lines at every width. */
.nira-hero-copy{container-type:inline-size}
.nira-hero-heading{font-size:clamp(17px,2.5vw,40px);letter-spacing:-.3px}
.nira-hero-heading-line{display:block;white-space:nowrap}
@supports(font-size:1cqi){.nira-hero-heading{font-size:clamp(16px,6cqi,40px)}}
@media(max-width:767px){.nira-hero-heading{font-size:clamp(16px,4.7vw,32px)}@supports(font-size:1cqi){.nira-hero-heading{font-size:clamp(15px,6cqi,32px)}}}

/* Homepage system: shared typography, headings and component surfaces. */
.nira-home{
 --nira-home-section-size:22px;--nira-home-card-size:14px;--nira-home-body-size:14px;
 --nira-home-heading-gap:32px;--nira-home-section-space:64px;
 --nira-home-card-radius:var(--nira-radius-card,24px);--nira-home-control-radius:var(--nira-radius-control,14px)
}
.nira-home>section:not(.nira-hero){padding-top:var(--nira-home-section-space);padding-bottom:var(--nira-home-section-space)}
.nira-home .nira-home-section-title{font-size:var(--nira-home-section-size);font-weight:800;line-height:1.6;letter-spacing:-.3px;white-space:normal;min-width:0;flex-shrink:1}
.nira-home .nira-home-card-title{font-size:var(--nira-home-card-size);font-weight:800;line-height:1.75;letter-spacing:0}
.nira-home .nira-home-copy{font-size:var(--nira-home-body-size);line-height:2.05;color:var(--nira-color-muted)}
.nira-home .nira-home-section-header{gap:12px;margin-bottom:var(--nira-home-heading-gap)}
.nira-home .nira-home-section-header-centered{gap:0}
.nira-home .nira-home-section-header-centered .nira-home-heading-icon{margin-bottom:16px}
.nira-home .nira-home-section-header-centered .nira-home-section-title{margin-bottom:0}
.nira-home .nira-home-heading-group{gap:12px;min-width:0;flex-shrink:1}
.nira-home .nira-home-heading-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:var(--nira-color-soft);color:var(--nira-color-primary);box-shadow:none}
.nira-home .nira-home-heading-icon>i{font-size:22px}
.nira-home #gallery .nira-home-heading-icon{background:#ffffff14;color:#fff}
.nira-home .nira-home-intro-heading{flex-wrap:wrap}
.nira-home .nira-home-intro-heading>h2{flex:1 1 auto}
.nira-home .nira-home-card{border-radius:var(--nira-home-card-radius);border-color:var(--nira-color-line);box-shadow:var(--nira-shadow-card);transition:box-shadow .25s ease,border-color .25s ease,transform .25s ease}
.nira-home .nira-home-card:hover{border-color:#cddac7;box-shadow:var(--nira-shadow-hover);transform:translateY(-2px)}
.nira-home :is(.nira-hero-button,.nira-home-button){border-radius:var(--nira-home-control-radius);font-size:14px;font-weight:800;line-height:1.7;min-height:50px}
.nira-home #gallery .gallery-item{border-radius:var(--nira-home-card-radius)}
@media(min-width:768px){.nira-home{--nira-home-section-size:28px;--nira-home-card-size:16px;--nira-home-body-size:16px;--nira-home-section-space:80px;--nira-home-heading-gap:36px}.nira-home :is(.nira-hero-button,.nira-home-button){font-size:15px}}
@media(max-width:767px){
 .nira-home .nira-hero-heading{width:100%;max-width:none;margin-left:auto;margin-right:auto;text-align:center!important;text-align-last:center!important}
 .nira-home .nira-hero-heading-line{text-align:center!important;text-align-last:center!important;font-size:inherit;font-weight:inherit;line-height:inherit}
 .nira-home .nira-hero-location{font-size:inherit;font-weight:inherit;line-height:inherit}
}
@media(prefers-reduced-motion:reduce){.nira-home .nira-home-card:hover{transform:none}}
