/* Proposal 03 curves and ribbons, using the bundled real photography. */
.home .avm-site-header { isolation: isolate; border-bottom: 0; background: #fffdf9; }
.home .avm-site-header::after {
  content: ""; position: absolute; left: -2%; right: -2%; bottom: -22px; z-index: 0;
  height: 37px; border-radius: 0 0 50% 50% / 0 0 95% 88%;
  background: #fffdf9; box-shadow: 0 6px 12px rgba(8,50,75,.06); pointer-events: none;
}
.home .avm-header-inner, .home .avm-search-panel { position: relative; z-index: 1; }
.avm-front-page > .avm-hero { background: #073a5e; }
.avm-hero-frame {
  inset: 0 10px 184px; border: 0;
  border-radius: 0 0 49% 50% / 0 0 13% 12%;
  box-shadow: 0 12px 30px rgba(2,44,65,.16);
}
.avm-hero-frame::before, .avm-hero-frame::after { opacity: .32; }
.avm-hero-waves {
  position: absolute; left: -1%; bottom: 195px; z-index: 4;
  display: block; width: 102%; height: 215px; pointer-events: none;
  filter: drop-shadow(0 -7px 12px rgba(3,42,68,.1));
}
.avm-hero-copy { padding-top: 100px; }
.avm-hero-copy h1 {
  font-family: Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size: clamp(49px,5.1vw,79px); font-weight: 900; letter-spacing: -.055em;
  line-height: .98; text-shadow: 0 3px 15px rgba(3,40,67,.8);
}
.avm-hero-copy h1 span { display: block; white-space: nowrap; }
.avm-hero-copy h1 span + span { color: #a5e5f6; }
.avm-hero-copy > p:last-of-type { margin-top: 15px; }
.avm-hero-light-trail { opacity: .25; }

/* An editorial product stage, separate from the catalog's purchasable cards. */
.avm-products-section {
  position: relative; padding: 50px 0 55px;
  background: radial-gradient(ellipse at 13% 18%,#f2fafb,transparent 38%),
    radial-gradient(ellipse at 89% 65%,#f7e7d5,transparent 35%),
    linear-gradient(110deg,#f8fbf8 0%,#fffaf2 63%,#fff3e6 100%);
}
.avm-products-section .avm-container { position: relative; z-index: 2; }
.avm-products-ambient {
  z-index: 1; width: 260px; height: 390px; border-radius: 0; opacity: .46;
  background: url('../images/decor/foliage.svg') center/contain no-repeat;
  filter: blur(5px); pointer-events: none;
}
.avm-products-ambient--left { left: -55px; top: 65px; bottom: auto; transform: rotate(-10deg); }
.avm-products-ambient--right { right: -65px; top: 35px; transform: rotate(13deg) scaleX(-1); }
.avm-products-section .avm-section-heading { position: relative; z-index: 4; margin-bottom: 0; }
.avm-products-section .avm-section-heading h2 { color: #062f4e; font-size: clamp(32px,3.3vw,46px); }
.avm-products-section .avm-text-link { color: #073d60; font-size: 14px; }
.avm-featured-stage { position: relative; min-height: 440px; padding: 5px 0 56px; isolation: isolate; }
.avm-featured-stage::before {
  content: ""; position: absolute; left: 10%; right: 2%; bottom: 58px; z-index: 0;
  height: 90px; border: 1px solid rgba(213,221,211,.8);
  border-radius: 48% 48% 14px 14px / 72% 72% 14px 14px;
  background: linear-gradient(180deg,#fff 0%,#fbfbf7 75%,#e9e9e1 100%);
  box-shadow: 0 -9px 30px rgba(255,255,255,.8),0 14px 27px rgba(39,85,78,.1);
}
.avm-featured-stage::after {
  content: ""; position: absolute; left: 10%; right: 2%; bottom: 35px; z-index: 0;
  height: 58px; border-radius: 9% 9% 23% 23% / 18% 18% 78% 78%;
  background: linear-gradient(180deg,#f4f1e9,#e5e1d8);
  box-shadow: 0 15px 24px rgba(33,71,75,.09);
}
.avm-featured-note {
  position: absolute; left: 3%; top: 92px; z-index: 3; width: 170px; margin: 0;
  color: #1876a1; font-family: "Bradley Hand","Segoe Print","Brush Script MT",cursive;
  font-size: clamp(25px,2.35vw,34px); font-weight: 500; line-height: .96;
  text-shadow: 0 1px 1px #fff; transform: rotate(-8deg);
}
.avm-featured-note span { display: block; }
.avm-featured-note span:nth-child(2) { padding-left: 15px; }
.avm-featured-note span:nth-child(3) { padding-left: 7px; }
.avm-featured-note span:nth-child(4) { padding-left: 19px; }
.avm-featured-note b { color: #f58232; font-family: inherit; font-size: 40px; font-weight: 400; vertical-align: -.15em; }
.avm-products-section .avm-featured-gallery {
  position: relative; z-index: 2; display: grid; grid-template-columns: repeat(4,minmax(0,1fr));
  align-items: end; gap: 5px; min-height: 347px; padding: 0 3% 0 18%; overflow: visible;
}
.avm-products-section .avm-featured-gallery .avm-featured-product,
.avm-products-section .avm-featured-gallery .avm-featured-product:nth-child(n) {
  display: flex; align-items: end; justify-content: center; min-width: 0;
  height: 345px; padding: 0; overflow: visible; border: 0; border-radius: 0;
  background: none; box-shadow: none; transform: none!important;
}
.avm-products-section .avm-featured-gallery .avm-featured-product::before,
.avm-products-section .avm-featured-gallery .avm-featured-product::after { display: none; }
.avm-products-section .avm-featured-gallery .avm-featured-product:hover { transform: translateY(-8px)!important; }
.avm-products-section .avm-featured-gallery .avm-featured-product img {
  display: block; width: auto; height: auto; max-width: 100%; max-height: 340px;
  margin: 0 auto; padding: 0; object-fit: contain;
  filter: drop-shadow(0 19px 12px rgba(25,50,64,.23));
}
.avm-featured-stage-footer {
  position: absolute; left: 5%; right: 4%; bottom: 7px; z-index: 2;
  display: flex; align-items: center; justify-content: space-between; gap: 20px;
  border-top: 1px solid #8ebbc8; padding-top: 9px;
  color: #246b90; font-size: 11px; font-weight: 700; letter-spacing: .08em;
}
.avm-featured-stage-footer span:last-child { letter-spacing: .22em; }

@media (max-width: 940px) {
  .avm-hero-waves { bottom: 175px; height: 190px; }
  .avm-hero-copy { padding-top: 92px; }
  .avm-hero-copy h1 { font-size: clamp(44px,7vw,67px); }
  .avm-featured-note { left: 0; width: 145px; font-size: 26px; }
  .avm-products-section .avm-featured-gallery { padding-left: 16%; padding-right: 1%; }
  .avm-products-section .avm-featured-gallery .avm-featured-product { height: 300px; }
  .avm-products-section .avm-featured-gallery .avm-featured-product img { max-height: 290px; }
}
@media (max-width: 640px) {
  .home .avm-site-header::after { bottom: -17px; height: 25px; }
  .avm-hero-frame { inset: 0 7px 176px; border-radius: 0 0 49% 49% / 0 0 7% 7%; }
  .avm-hero-waves { bottom: 177px; width: 140%; left: -20%; height: 150px; }
  .avm-hero-copy { padding-top: 57px; }
  .avm-hero-copy h1 { font-size: clamp(42px,11vw,61px); }
  .avm-products-section { padding: 56px 0 45px; }
  .avm-products-section .avm-section-heading { margin-bottom: 7px; }
  .avm-products-section .avm-section-heading h2 { font-size: 26px; }
  .avm-products-section .avm-text-link { font-size: 11px; }
  .avm-products-ambient { width: 140px; height: 240px; opacity: .35; }
  .avm-products-ambient--left { left: -86px; }
  .avm-products-ambient--right { right: -92px; }
  .avm-featured-stage { min-height: 342px; padding: 0 0 49px; }
  .avm-featured-note { position: relative; left: 5px; top: auto; width: max-content; font-size: 24px; transform: rotate(-5deg); }
  .avm-featured-note span { display: inline; padding: 0!important; }
  .avm-featured-note span::after { content: " "; }
  .avm-featured-note b { font-size: 28px; }
  .avm-products-section .avm-featured-gallery {
    display: flex; align-items: end; gap: 2px; min-height: 225px;
    margin: 0 -12px; padding: 4px 13px 10px; overflow-x: auto;
    scroll-snap-type: x mandatory; scrollbar-width: thin;
  }
  .avm-products-section .avm-featured-gallery .avm-featured-product,
  .avm-products-section .avm-featured-gallery .avm-featured-product:nth-child(n) {
    flex: 0 0 39%; height: 213px; scroll-snap-align: center;
  }
  .avm-products-section .avm-featured-gallery .avm-featured-product img { max-height: 205px; }
  .avm-featured-stage::before { left: 0; right: 0; bottom: 56px; height: 49px; }
  .avm-featured-stage::after { left: 0; right: 0; bottom: 40px; height: 33px; }
  .avm-featured-stage-footer { left: 2%; right: 2%; bottom: 9px; font-size: 9px; }
  .avm-featured-stage-footer span:last-child { display: none; }
}
