/* Homepage only; shared header and other pages retain their own styles. */
.avni-home { background: #fff; color: #172735; font-family: 'Poppins', Arial, sans-serif; }
.avni-home .home-wrap { width: min(1200px, calc(100% - 64px)); margin-inline: auto; }
.avni-home main { text-align: left; }
.avni-home .home-skip { position: fixed; top: -100px; left: 20px; z-index: 2000; background: #fff; padding: 12px; }
.avni-home .home-skip:focus { top: 10px; }
.avni-home a:focus-visible, .avni-home button:focus-visible { outline: 2px solid #639bca !important; outline-offset: 4px; }
.avni-home .home-eyebrow { margin: 0 0 18px; color: #326896; font-size: 14px; line-height: 1.6; font-weight: 600; letter-spacing: 2.3px; }
.avni-home .home-hero .home-eyebrow { color: #9dc8eb; }
.avni-home .home-hero h1 em { color: #91c5ed; font-style: normal; }
.avni-home .home-actions { display: flex; align-items: center; gap: 28px; }
.avni-home .home-button { display: inline-flex; justify-content: space-between; align-items: center; gap: 26px; padding: 16px 23px; background: #326896; color: #fff; font-size: 16px; font-weight: 500; border-radius: 3px; transition: background .2s; }
.avni-home .home-button:hover { background: #234f75; }
.avni-home .home-text-link { color: #326896; font-size: 16px; font-weight: 500; display: inline-flex; align-items: center; gap: 14px; }
.avni-home .home-hero .home-text-link { color: #e2eaf1; }
.avni-home .home-assurance { display: grid; grid-template-columns: repeat(3, 1fr); padding-block: 28px; gap: 32px; }
.avni-home .home-assurance > div { display: flex; gap: 18px; align-items: center; }
.avni-home .home-assurance > div + div { border-left: 1px solid #e4e9ed; padding-left: 32px; }
.avni-home .home-assurance__icon { color: #326896; background: #edf3f8; width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; font-size: 16px; }
.avni-home .home-assurance h2 { font: 500 16px/1.5 'Poppins', Arial, sans-serif; margin: 0; text-transform: none; letter-spacing: 0; }
.avni-home .home-assurance p { font-size: 14px; color: #526372; margin: 3px 0 0; }
.avni-home .home-collection { background: #f4f6f8; border-block: 1px solid #e9edf0; padding: 72px 0 56px; }
.avni-home .home-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 30px; }
.avni-home .home-section-heading .home-eyebrow { margin-bottom: 10px; }
.avni-home .home-section-heading h2, .avni-home .home-help h2 { font: 500 clamp(26px, 2.7vw, 36px)/1.3 'Poppins', Arial, sans-serif; letter-spacing: -1px; text-transform: none; margin: 0; }
.avni-home .home-section-heading > p, .avni-home .home-help p:not(.home-eyebrow) { font-size: 16px; color: #526372; line-height: 1.8; margin: 0; }
.avni-home .home-filters { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 30px; scroll-margin-top: 125px; }
.avni-home .home-filters .filter-btn { width: auto; min-width: 92px; padding: 10px 20px; border: 1px solid #d9e1e7; border-radius: 4px; color: #526372; background: transparent; font: 500 16px/1.6 'Poppins', Arial, sans-serif; }
.avni-home .home-filters .filter-active { background: #173c5b !important; border-color: #173c5b; }
.avni-home #products-container { margin-inline: -10px; }
.avni-home .product-item { padding-inline: 10px; animation: none; }
.avni-home .card { height: 100%; text-align: left; border: 1px solid #e0e6eb; border-radius: 7px; overflow: hidden; background: #fff; box-shadow: 0 3px 8px #17273503; transition: transform .2s, box-shadow .2s; }
.avni-home .card:hover { transform: translateY(-4px); box-shadow: 0 12px 24px #1727350e; }
.avni-home .card > a { display: flex; flex-direction: column; height: 100%; color: #172735; }
.avni-home .home-help { display: flex; justify-content: space-between; align-items: center; gap: 40px; padding-block: 72px; }
.avni-home .home-help .home-button { margin-top: 24px; }
.avni-home .footer-classic { background: #101820; text-align: left; }
.avni-home .footer-classic .container-fluid { max-width: 1280px; }
.avni-home .footer-classic .box-footer { padding: 50px 30px 35px; }
.avni-home .footer-classic h3 { color: #fff; font: 500 16px/1.6 'Poppins', Arial, sans-serif; letter-spacing: 1.4px; }
.avni-home .footer-list-category .heading-5 { font: 400 16px/1.8 'Poppins', Arial, sans-serif; }
.avni-home .footer-classic p, .avni-home .contact-classic { font-size: 16px; line-height: 1.9; }
.avni-home .footer-classic .contact-classic-title { font-size: 16px; }
.avni-home .footer-bottom-panel { padding-block: 24px; border-top: 1px solid #ffffff15; }
@media (max-width: 900px) {
  .avni-home .home-assurance { gap: 16px; }
  .avni-home .home-assurance > div + div { padding-left: 16px; }
  .avni-home .home-assurance__icon { display: none; }
  .avni-home .home-section-heading { align-items: start; }
}
@media (max-width: 600px) {
  .avni-home .home-wrap { width: calc(100% - 40px); }
  .avni-home .home-actions { gap: 20px; flex-wrap: wrap; }
  .avni-home .home-button { padding: 14px 18px; font-size: 14px; gap: 18px; }
  .avni-home .home-assurance { grid-template-columns: 1fr; gap: 16px; padding-block: 24px; }
  .avni-home .home-assurance > div + div { padding: 0; border: 0; }
  .avni-home .home-assurance__icon { display: grid; }
  .avni-home .home-collection, .avni-home .home-highlights, .avni-home .home-help { padding-block: 44px; }
  .avni-home .home-section-heading, .avni-home .home-help { flex-direction: column; gap: 16px; align-items: start; }
  .avni-home .home-filters { gap: 8px; }
  .avni-home .home-filters .filter-btn { min-width: 0; padding: 10px 14px; }
  .avni-home .footer-classic .box-footer { padding: 30px 12px; }
}
@media (prefers-reduced-motion: reduce) { .avni-home .card { transition: none; } }

/* Full hero carousel: images remain uncropped, with readable copy alongside. */
.avni-home .home-hero { background: #101d29; padding: 64px 0 48px; }
.avni-home .home-hero__layout { display: grid; grid-template-columns: .8fr 1.35fr; align-items: center; gap: 44px; }
.avni-home .home-hero__content { min-width: 0; }
.avni-home .home-hero h1 { color: #fff; font: 500 clamp(36px, 3.4vw, 50px)/1.15 'Poppins', Arial, sans-serif; letter-spacing: -1.6px; margin: 0; text-transform: none; }
.avni-home .home-hero__intro { color: #cedbe5; font-size: 17px; line-height: 1.8; margin: 24px 0 28px; max-width: 460px; }
.avni-home .home-actions { flex-wrap: wrap; gap: 20px; }
.avni-home .home-eyebrow { letter-spacing: 1.6px; }
.avni-home .home-carousel { min-width: 0; border: 1px solid #365065; border-radius: 10px; overflow: hidden; background: #132635; }
.avni-home .home-carousel__slides { aspect-ratio: 1600 / 800; display: grid; background: #0b1620; touch-action: pan-y; }
.avni-home .home-carousel__slide { grid-area: 1 / 1; display: flex; align-items: center; min-width: 0; }
.avni-home .home-carousel__slide[hidden] { display: none; }
.avni-home .home-carousel__slide img { width: 100%; height: 100%; max-height: 100%; object-fit: contain; }
.avni-home .home-carousel__controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 20px 6px; color: #e0eaf1; }
.avni-home .home-carousel__controls > div { display: flex; align-items: center; gap: 14px; }
.avni-home .home-carousel__count { color: #a7cce8; font-size: 14px; white-space: nowrap; }
.avni-home .home-carousel__caption { font-size: 15px; }
.avni-home .home-carousel__buttons button { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid #4b6478; border-radius: 50%; background: transparent; color: #fff; cursor: pointer; font-size: 21px; }
.avni-home .home-carousel__buttons button:hover { background: #326896; }
.avni-home .home-carousel__dots { display: flex; justify-content: center; gap: 8px; padding: 0 20px 8px; }
.avni-home .home-carousel__dots button { position: relative; width: 44px; height: 32px; border: 0; background: transparent; cursor: pointer; }
.avni-home .home-carousel__dots button::after { content: ''; display: block; height: 3px; background: #506a80; border-radius: 3px; }
.avni-home .home-carousel__dots button[aria-pressed="true"]::after { background: #b0daf9; }
.avni-home .home-assurance h2 { font-size: 17px; }
.avni-home .home-assurance p { font-size: 15px; }
.avni-home .home-assurance__icon { flex-shrink: 0; }
.avni-home .home-filters .filter-btn { font-size: 16px; min-height: 46px; }
.avni-home .product-item { flex: 0 0 25%; max-width: 25%; }
.avni-home .footer-classic .contact-classic-title { font-size: 16px; }
.avni-home .footer-classic .unit { flex-wrap: wrap; }
.avni-home .footer-classic .unit-body { overflow-wrap: anywhere; }
@media (max-width: 1100px) {
  .avni-home .product-item { flex-basis: 33.333333%; max-width: 33.333333%; }
  .avni-home .home-hero__layout { grid-template-columns: 1fr 1.2fr; gap: 28px; }
  .avni-home .home-carousel__caption { display: none; }
}
@media (max-width: 800px) {
  .avni-home .home-hero { padding-block: 0 32px; }
  .avni-home .home-hero__layout { width: 100%; grid-template-columns: 1fr; gap: 32px; }
  .avni-home .home-hero__content { padding-inline: 24px; }
  .avni-home .home-carousel { order: -1; border-radius: 0; border-inline: 0; border-top: 0; }
  .avni-home .home-hero__intro { max-width: 620px; }
  .avni-home .home-carousel__caption { display: inline; }
  .avni-home .product-item { flex-basis: 50%; max-width: 50%; }
  .avni-home .home-assurance { grid-template-columns: 1fr; gap: 20px; }
  .avni-home .home-assurance > div + div { border: 0; padding: 0; }
  .avni-home .home-assurance__icon { display: grid; }
}
@media (max-width: 500px) {
  .avni-home .home-hero h1 { font-size: 37px; }
  .avni-home .home-hero__intro { font-size: 16px; }
  .avni-home .home-carousel__controls { padding-inline: 12px; }
  .avni-home .home-carousel__controls > div { gap: 8px; }
  .avni-home .home-carousel__caption { display: none; }
  .avni-home .product-item { flex-basis: 100%; max-width: 100%; }
  .avni-home .home-section-heading > p br, .avni-home .home-help p br { display: none; }
}

/* Quiet, consistent benefit cards and an editorial brand section. */
.avni-home .home-assurance { padding-block: 32px; gap: 16px; }
.avni-home .home-assurance > div, .avni-home .home-assurance > div + div { padding: 26px 22px; border: 1px solid #e2e9ee; border-radius: 12px; background: linear-gradient(135deg,#fff,#f6f9fb); align-items: flex-start; gap: 16px; }
.avni-home .home-assurance__icon { display: grid; width: 48px; height: 48px; border-radius: 12px; background: #eaf2f8; color: #285c81; }
.avni-home .home-assurance__icon svg { width: 26px; height: 26px; }
.avni-home .home-assurance h2 { font-size: 16px; font-weight: 600; }
.avni-home .home-assurance p { font-size: 13px; line-height: 1.7; margin-top: 6px; }
.avni-home .home-living { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: 64px; padding-block: 80px; }
.avni-home .home-living__photo { position: relative; border-radius: 16px; overflow: hidden; background: #e8e5df; }
.avni-home .home-living__photo img { display: block; width: 100%; aspect-ratio: 4/5; object-fit: cover; }
.avni-home .home-living__photo > span { position: absolute; bottom: 20px; left: 20px; right: 20px; padding: 14px 16px; border: 1px solid #ffffff80; border-radius: 6px; color: #243e50; background: #fffffff0; font-size: 10px; letter-spacing: 1.8px; }
.avni-home .home-living h2 { font: 500 clamp(32px,4vw,52px)/1.16 'Poppins',Arial,sans-serif; letter-spacing: -1.6px; text-transform: none; margin: 0 0 24px; }
.avni-home .home-living__copy > p:not(.home-eyebrow) { color: #637584; font-size: 15px; line-height: 1.9; margin-bottom: 24px; }
.avni-home .home-living__experience { display: flex; gap: 22px; border-top: 1px solid #dfe7ed; padding-top: 26px; margin-top: 32px; }
.avni-home .home-living__experience strong { font-size: 46px; line-height: 1; color: #326896; font-weight: 500; }
.avni-home .home-living__experience strong span { display: block; font-size: 12px; margin-top: 8px; letter-spacing: 1px; }
.avni-home .home-living__experience h3 { font: 500 15px/1.5 'Poppins',Arial,sans-serif; text-transform: none; letter-spacing: 0; margin: 0 0 8px; }
.avni-home .home-living__experience p { color: #6a7a86; font-size: 12px; line-height: 1.8; margin: 0; }
.avni-home .home-numbers { background: #101f2d; padding: 54px 0; color: #fff; }
.avni-home .home-numbers__heading { text-align: center; margin-bottom: 32px; }
.avni-home .home-numbers .home-eyebrow { color: #9bc1dc; font-size: 10px; margin-bottom: 12px; }
.avni-home .home-numbers h2 { font: 400 clamp(23px,3vw,32px)/1.3 'Poppins',Arial,sans-serif; color: #fff; letter-spacing: -.6px; text-transform: none; margin: 0; }
.avni-home .home-stats { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 0; }
.avni-home .home-stats > div { display: flex; flex-direction: column-reverse; align-items: center; justify-content: center; gap: 12px; padding: 22px 14px; border-left: 1px solid #ffffff20; }
.avni-home .home-stats > div:first-child { border-left: 0; }
.avni-home .home-stats dd { font-size: clamp(36px,4vw,52px); line-height: 1.1; letter-spacing: -1.5px; font-weight: 500; margin: 0; color: #fff; }
.avni-home .home-stats dd span { font-size: .65em; color: #9cc9e8; padding-left: 3px; }
.avni-home .home-stats dt { font-size: 13px; line-height: 1.5; color: #bccdd9; text-align: center; font-weight: 400; }
@media(max-width:1000px) { .avni-home .home-assurance > div, .avni-home .home-assurance > div + div { padding: 20px 16px; } .avni-home .home-living { gap: 32px; } }
@media(max-width:800px) { .avni-home .home-assurance { gap: 12px; } .avni-home .home-living { grid-template-columns: 1fr; padding-block: 48px; } .avni-home .home-living__photo img { aspect-ratio: 4/3; } .avni-home .home-living__copy { max-width: 560px; } }
@media(max-width:600px) {
  .avni-home .home-assurance { padding-block: 24px; }
  .avni-home .home-assurance > div, .avni-home .home-assurance > div + div { padding: 20px; align-items: center; }
  .avni-home .home-living { gap: 28px; }
  .avni-home .home-living h2 { font-size: 36px; }
  .avni-home .home-numbers { padding: 36px 0; }
  .avni-home .home-numbers__heading { margin-bottom: 20px; }
  .avni-home .home-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .avni-home .home-stats > div { padding: 26px 8px; gap: 10px; }
  .avni-home .home-stats > div:nth-child(odd) { border-left: 0; }
  .avni-home .home-stats > div:nth-child(n+3) { border-top: 1px solid #ffffff20; }
  .avni-home .home-stats dd { font-size: 40px; }
  .avni-home .home-stats dt { font-size: 12px; }
}
