:root {
  --diamila-ink: #16201f;
  --diamila-forest: #203c38;
  --diamila-sage: #71857f;
  --diamila-gold: #b58a4c;
  --diamila-ivory: #f6f2eb;
  --diamila-paper: #fcfbf8;
  --diamila-mist: #dce6e3;
  --diamila-line: rgba(22, 32, 31, .14);
  --diamila-serif: "Iowan Old Style", "Baskerville", "Times New Roman", serif;
  --diamila-sans: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html { scroll-behavior: smooth; }
body.diamila-site { background: var(--diamila-paper); color: var(--diamila-ink); font-family: var(--diamila-sans); font-size: 15px; letter-spacing: .01em; }
.diamila-site a { color: inherit; }
.diamila-site h1, .diamila-site h2, .diamila-site h3 { color: var(--diamila-ink); font-family: var(--diamila-serif); font-weight: 400; }
.diamila-site .container { max-width: 1240px; }

.diamila-announcement { background: var(--diamila-forest); color: #fff; font-size: 11px; letter-spacing: .14em; padding: 9px 0; text-transform: uppercase; }
.diamila-announcement .container { display: flex; justify-content: space-between; }
.diamila-announcement__detail { color: #cddbd8; }

.diamila-site #top { background: var(--diamila-paper); border-bottom: 1px solid var(--diamila-line); margin: 0; min-height: auto; padding: 9px 0; }
.diamila-site #top a, .diamila-site #top .dropdown-toggle { color: #57615f; font-size: 12px; text-decoration: none; }
.diamila-site #top a:hover { color: var(--diamila-gold); }
.diamila-site #top i { margin-right: 4px; }
.diamila-site #top .list-inline-item { margin-left: 18px; }

.diamila-header { background: rgba(252, 251, 248, .97); padding: 22px 0; position: relative; z-index: 8; }
.diamila-wordmark { display: inline-flex; flex-direction: column; font-family: var(--diamila-serif); font-size: 31px; letter-spacing: .19em; line-height: .92; text-decoration: none; }
.diamila-wordmark span { color: var(--diamila-gold); font-family: var(--diamila-sans); font-size: 8px; letter-spacing: .36em; margin-top: 9px; }
.diamila-mobile-search { font-size: 20px; }
.diamila-header #search .form-control { background: transparent; border-color: var(--diamila-line); border-radius: 0; font-size: 12px; min-height: 44px; }
.diamila-header #search .btn { background: transparent; border-color: var(--diamila-line); border-radius: 0; color: var(--diamila-ink); }
.diamila-header #cart .btn { background: var(--diamila-ink); border: 0; border-radius: 0; color: #fff; min-height: 44px; }
.diamila-site #menu { background: var(--diamila-paper); border: 0; border-bottom: 1px solid var(--diamila-line); border-radius: 0; margin: 0; min-height: 48px; }
.diamila-site #menu .nav-link { color: var(--diamila-ink); font-size: 12px; font-weight: 500; letter-spacing: .12em; padding: 15px 20px; text-shadow: none; text-transform: uppercase; }
.diamila-site #menu .nav-link:hover { color: var(--diamila-gold); }
.diamila-primary-nav { background: var(--diamila-paper); border-bottom: 1px solid var(--diamila-line); }
.diamila-primary-nav .container { align-items: center; display: flex; justify-content: center; }
.diamila-primary-nav a { color: var(--diamila-ink); font-size: 11px; font-weight: 600; letter-spacing: .13em; padding: 17px 22px; text-decoration: none; text-transform: uppercase; transition: color .2s; }
.diamila-primary-nav a:hover { color: var(--diamila-gold); }

.diamila-hero { background: var(--diamila-ivory); min-height: 700px; overflow: hidden; padding: 62px 0; position: relative; }
.diamila-hero:before { background: radial-gradient(circle, rgba(255,255,255,.95) 0, rgba(255,255,255,0) 67%); content: ""; height: 720px; position: absolute; right: -80px; top: -80px; width: 720px; }
.diamila-hero__copy { padding-left: clamp(20px, 4vw, 64px); position: relative; z-index: 2; }
.diamila-eyebrow { color: var(--diamila-gold); font-size: 11px; font-weight: 600; letter-spacing: .2em; margin-bottom: 19px; text-transform: uppercase; }
.diamila-hero h1 { font-size: clamp(48px, 5.4vw, 78px); letter-spacing: -.035em; line-height: 1.02; margin: 0 0 27px; }
.diamila-hero h1 em { color: var(--diamila-forest); font-weight: 400; }
.diamila-hero__lead { color: #56615e; font-size: 17px; line-height: 1.85; max-width: 590px; }
.diamila-hero__actions { align-items: center; display: flex; flex-wrap: wrap; gap: 25px; margin: 36px 0; }
.diamila-button { align-items: center; border: 1px solid transparent; display: inline-flex; font-size: 11px; font-weight: 600; justify-content: center; letter-spacing: .14em; min-height: 50px; padding: 0 26px; text-decoration: none; text-transform: uppercase; transition: .25s ease; }
.diamila-button--dark { background: var(--diamila-ink); color: #fff !important; }
.diamila-button--dark:hover { background: var(--diamila-gold); }
.diamila-button--link { padding: 0; }
.diamila-button--link span { font-size: 18px; margin-left: 12px; transition: transform .2s; }
.diamila-button--link:hover span { transform: translateX(5px); }
.diamila-button--outline { border-color: var(--diamila-forest); }
.diamila-button--outline:hover { background: var(--diamila-forest); color: #fff; }
.diamila-button--light { background: #fff; color: var(--diamila-forest) !important; }
.diamila-button--light:hover { background: var(--diamila-gold); color: #fff !important; }
.diamila-hero__meta { color: #6f7775; display: flex; flex-wrap: wrap; font-size: 10px; gap: 20px; letter-spacing: .08em; text-transform: uppercase; }
.diamila-hero__meta span:before { color: var(--diamila-gold); content: "◆"; font-size: 6px; margin-right: 8px; vertical-align: 2px; }

.diamila-hero__media { height: 570px; margin: 0 0 0 auto; max-width: 590px; overflow: visible; position: relative; z-index: 1; }
.diamila-hero__media:before { border: 1px solid rgba(181,138,76,.55); content: ""; inset: -15px 18px 18px -15px; pointer-events: none; position: absolute; z-index: -1; }
.diamila-hero__media picture { display: block; height: 100%; overflow: hidden; }
.diamila-hero__media img { height: 100%; object-fit: cover; object-position: 63% center; width: 100%; }
.diamila-hero__media figcaption { background: rgba(252,251,248,.96); bottom: 28px; box-shadow: 0 18px 44px rgba(22,32,31,.15); color: #56615e; font-family: var(--diamila-serif); font-size: 16px; left: -36px; line-height: 1.45; max-width: 245px; padding: 22px 26px; position: absolute; }
.diamila-hero__media figcaption span { color: var(--diamila-gold); display: block; font-family: var(--diamila-sans); font-size: 9px; font-weight: 600; letter-spacing: .18em; margin-bottom: 7px; text-transform: uppercase; }

.diamila-trust { background: var(--diamila-forest); color: #fff; padding: 28px 0; }
.diamila-trust .container { display: grid; grid-template-columns: repeat(3, 1fr); }
.diamila-trust__item { align-items: center; border-right: 1px solid rgba(255,255,255,.16); display: flex; gap: 17px; padding: 0 42px; }
.diamila-trust__item:first-child { padding-left: 0; }
.diamila-trust__item:last-child { border: 0; }
.diamila-trust__item strong { color: var(--diamila-gold); font-family: var(--diamila-serif); font-size: 24px; font-weight: 400; }
.diamila-trust__item span { color: #c6d1ce; font-size: 11px; line-height: 1.5; }
.diamila-trust__item b { color: #fff; display: block; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }

.diamila-collections { padding: 108px 0; }
.diamila-section-heading { margin: 0 auto 52px; max-width: 660px; text-align: center; }
.diamila-section-heading h2, .diamila-story h2, .diamila-consultation h2 { font-size: clamp(38px, 4vw, 54px); letter-spacing: -.025em; }
.diamila-section-heading > p:last-child { color: #69726f; line-height: 1.8; }
.diamila-collection-grid { display: grid; gap: 18px; grid-template-columns: repeat(4, 1fr); }
.diamila-collection-card { background: #edf0ec; min-height: 390px; overflow: hidden; position: relative; text-decoration: none; }
.diamila-collection-card:after { border: 1px solid rgba(255,255,255,.5); content: ""; inset: 12px; opacity: 0; position: absolute; transition: .3s; }
.diamila-collection-card:hover:after { inset: 20px; opacity: 1; }
.diamila-collection-card--necklace { background: #e8ded1; }
.diamila-collection-card--earring { background: #dce6e3; }
.diamila-collection-card--bracelet { background: #ede6dc; }
.diamila-collection-card__art { align-items: center; color: rgba(32,60,56,.72); display: flex; font-size: 116px; height: 300px; justify-content: center; position: relative; transition: transform .35s; }
.diamila-collection-card__art:before { border: 1px solid rgba(255,255,255,.8); border-radius: 50%; content: ""; height: 190px; position: absolute; width: 190px; }
.diamila-collection-card:hover .diamila-collection-card__art { transform: scale(1.04); }
.diamila-collection-card__label { background: rgba(252,251,248,.94); bottom: 0; display: flex; flex-direction: column; font-size: 10px; left: 0; letter-spacing: .12em; padding: 18px 22px; position: absolute; right: 0; text-transform: uppercase; z-index: 2; }
.diamila-collection-card__label b { font-family: var(--diamila-serif); font-size: 23px; font-weight: 400; letter-spacing: 0; text-transform: none; }
.diamila-collection-card__label i { font-size: 16px; position: absolute; right: 24px; top: 29px; }

.diamila-story { background: #e5ece9; padding: 90px 0; }
.diamila-story__visual { align-items: center; background: var(--diamila-forest); display: flex; height: 550px; justify-content: center; margin-right: 30px; overflow: hidden; position: relative; }
.diamila-story__visual:before, .diamila-story__visual:after { border: 1px solid rgba(255,255,255,.12); border-radius: 50%; content: ""; height: 380px; position: absolute; width: 380px; }
.diamila-story__visual:after { height: 260px; width: 260px; }
.diamila-story__orbit { border: 1px solid var(--diamila-gold); border-radius: 50%; height: 170px; position: absolute; transform: rotate(55deg) scaleY(.45); width: 250px; }
.diamila-story__visual > i { color: #fff; filter: drop-shadow(0 10px 22px rgba(255,255,255,.18)); font-size: 110px; position: relative; }
.diamila-story__copy { padding: 40px 70px; }
.diamila-story__copy > p:not(.diamila-eyebrow) { color: #586562; font-size: 16px; line-height: 1.9; }
.diamila-story__copy ul { list-style: none; margin: 28px 0 36px; padding: 0; }
.diamila-story__copy li { border-bottom: 1px solid rgba(32,60,56,.13); padding: 13px 0; }
.diamila-story__copy li i { color: var(--diamila-gold); margin-right: 12px; }

.diamila-modules { padding: 84px 0 30px; }
.diamila-modules h3 { font-size: 36px; margin-bottom: 30px; text-align: center; }
.diamila-site .product-thumb { background: #fff; border: 1px solid var(--diamila-line); border-radius: 0; transition: box-shadow .25s, transform .25s; }
.diamila-site .product-thumb:hover { box-shadow: 0 18px 50px rgba(22,32,31,.1); transform: translateY(-4px); }
.diamila-site .product-thumb h4 { font-family: var(--diamila-serif); font-size: 20px; }
.diamila-site .product-thumb .price { color: var(--diamila-gold); font-weight: 600; }

.diamila-featured-products { background: var(--diamila-paper); padding: 104px 0 48px; }
.diamila-product-grid { display: grid; gap: 22px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.diamila-product-card { background: #fff; border: 1px solid var(--diamila-line); min-width: 0; transition: box-shadow .25s, transform .25s; }
.diamila-product-card:hover { box-shadow: 0 20px 50px rgba(22,32,31,.1); transform: translateY(-5px); }
.diamila-product-card__image { background: #f2f0eb; display: block; overflow: hidden; }
.diamila-product-card__image img { aspect-ratio: 1; display: block; height: auto; object-fit: cover; transition: transform .45s ease; width: 100%; }
.diamila-product-card:hover .diamila-product-card__image img { transform: scale(1.035); }
.diamila-product-card__body { padding: 22px 22px 25px; }
.diamila-product-card__body > p { color: var(--diamila-gold); font-size: 9px; font-weight: 600; letter-spacing: .16em; margin-bottom: 10px; text-transform: uppercase; }
.diamila-product-card h3 { font-size: 19px; line-height: 1.35; margin: 0 0 15px; min-height: 78px; }
.diamila-product-card h3 a { text-decoration: none; }
.diamila-product-card strong { color: var(--diamila-forest); display: block; font-size: 15px; margin-bottom: 18px; }
.diamila-product-card__link { border-top: 1px solid var(--diamila-line); display: flex; font-size: 10px; font-weight: 600; justify-content: space-between; letter-spacing: .12em; padding-top: 16px; text-decoration: none; text-transform: uppercase; }
.diamila-product-card__link span { color: var(--diamila-gold); font-size: 17px; }

.diamila-consultation { background: var(--diamila-forest); color: #d6e0de; margin-top: 70px; padding: 90px 20px; text-align: center; }
.diamila-consultation h2 { color: #fff; }
.diamila-consultation > .container > p:not(.diamila-eyebrow) { margin: 0 auto 30px; max-width: 620px; }

.diamila-site footer { background: #111918; color: #aeb9b6; margin-top: 0; padding: 70px 0 25px; }
.diamila-site footer h5 { color: #fff; font-family: var(--diamila-serif); font-size: 20px; font-weight: 400; }
.diamila-site footer a { color: #aeb9b6; line-height: 2; text-decoration: none; }
.diamila-site footer a:hover { color: var(--diamila-gold); }
.diamila-site footer hr { border-color: rgba(255,255,255,.12); margin-top: 35px; }

#common-maintenance { align-items: center; display: flex; justify-content: center; min-height: 560px; padding: 80px 20px; text-align: center; }
.diamila-maintenance { margin: 0 auto; max-width: 760px; }
.diamila-maintenance:before { border: 1px solid var(--diamila-gold); border-radius: 50%; color: var(--diamila-gold); content: "◆"; display: inline-flex; align-items: center; justify-content: center; height: 64px; margin-bottom: 28px; width: 64px; }
.diamila-maintenance h1 { font-size: clamp(42px, 5vw, 68px); letter-spacing: -.035em; line-height: 1.05; margin-bottom: 24px; }
.diamila-maintenance > p:last-child { color: #68726f; font-size: 17px; line-height: 1.85; margin: 0 auto; max-width: 650px; }

@media (max-width: 991px) {
  .diamila-hero { padding-top: 55px; }
  .diamila-hero__media { height: 460px; margin-top: 55px; max-width: 100%; }
  .diamila-trust__item { padding: 0 18px; }
  .diamila-collection-grid { grid-template-columns: repeat(2, 1fr); }
  .diamila-primary-nav .container { justify-content: flex-start; overflow-x: auto; }
  .diamila-primary-nav a { flex: 0 0 auto; }
  .diamila-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .diamila-story__visual { height: 430px; margin: 0; }
  .diamila-story__copy { padding: 60px 20px 10px; }
}

@media (max-width: 767px) {
  .diamila-announcement .container { justify-content: center; text-align: center; }
  .diamila-announcement__detail { display: none; }
  .diamila-site #top .list-inline-item { margin-left: 10px; }
  .diamila-header { padding: 18px 0; }
  .diamila-wordmark { font-size: 25px; }
  .diamila-site #menu .navbar-toggler { border: 0; box-shadow: none; width: 100%; }
  .diamila-hero { min-height: 0; padding: 52px 0 30px; text-align: center; }
  .diamila-hero__copy { padding: 0 20px; }
  .diamila-hero h1 { font-size: 46px; }
  .diamila-hero__lead { font-size: 15px; }
  .diamila-hero__actions, .diamila-hero__meta { justify-content: center; }
  .diamila-hero__media { height: 390px; margin: 48px 14px 0; }
  .diamila-hero__media:before { inset: -10px 12px 12px -10px; }
  .diamila-hero__media figcaption { bottom: 18px; left: -8px; max-width: 220px; padding: 17px 20px; text-align: left; }
  .diamila-trust .container { grid-template-columns: 1fr; }
  .diamila-trust__item { border-bottom: 1px solid rgba(255,255,255,.14); border-right: 0; padding: 17px 0; }
  .diamila-collections { padding: 74px 0; }
  .diamila-collection-card { min-height: 330px; }
  .diamila-collection-card__art { height: 245px; }
  .diamila-story { padding: 55px 0; }
  .diamila-featured-products { padding: 76px 0 25px; }
}

@media (max-width: 520px) {
  .diamila-collection-grid { grid-template-columns: 1fr; }
  .diamila-product-grid { grid-template-columns: 1fr; }
  .diamila-collection-card { min-height: 350px; }
  .diamila-collection-card__art { height: 270px; }
  .diamila-hero__actions { align-items: stretch; flex-direction: column; gap: 8px; }
  .diamila-button--link { min-height: 44px; }
}
