/* Calore, materia e dettagli cerimoniali */
:root {
  --ink: #302821;
  --paper: #f0e6d9;
  --line: rgba(48, 40, 33, .22);
  --accent: #b86f52;
}

.hero { background: #7b6d63; }
.hero-image { filter: saturate(.88) sepia(.08) contrast(.98); }
.hero-wash { background: linear-gradient(90deg, rgba(36, 25, 20, .62), rgba(36, 25, 20, .10) 68%), linear-gradient(0deg, rgba(36, 25, 20, .52), transparent 38%); }
.gallery-note em { font-style: italic; font-weight: 400; }
.work { background: #9c8777; }
.work img { filter: saturate(.86) sepia(.09); transition: transform .8s cubic-bezier(.2, .75, .2, 1), filter .6s; }
.work::after { background: linear-gradient(0deg, rgba(39, 26, 20, .72), transparent 48%); }
.work:hover img { filter: saturate(1) sepia(.03); }
.gallery-note > p:nth-child(2) { max-width: 290px; }
.gallery-note a span { color: var(--accent); }

.ceremony-rhythm {
  overflow: hidden;
  padding-block: clamp(105px, 15vw, 225px);
  background: radial-gradient(circle at 85% 12%, rgba(255, 240, 219, .46), transparent 24%), linear-gradient(125deg, #c88c6b, #d9b096 55%, #e9cbb3);
  color: #33251e;
}
.rhythm-heading { display: grid; grid-template-columns: .62fr 1.38fr; gap: 32px; padding-top: 18px; border-top: 1px solid rgba(51, 37, 30, .3); }
.rhythm-heading h2 { max-width: 980px; }
.rhythm-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(30px, 6vw, 95px); margin: clamp(80px, 12vw, 160px) 0 0; padding: 0; list-style: none; }
.rhythm-list li { display: grid; grid-template-columns: 36px 1fr; gap: 16px; border-top: 1px solid rgba(51, 37, 30, .35); padding-top: 14px; }
.rhythm-list > li > span { color: rgba(51, 37, 30, .66); font-size: .66rem; letter-spacing: .12em; }
.rhythm-list b { display: block; font: 400 clamp(1.55rem, 2.2vw, 2.5rem)/1 var(--serif); letter-spacing: -.04em; }
.rhythm-list p { margin: 16px 0 0; font-size: .94rem; line-height: 1.62; }
.rhythm-closing { max-width: 595px; margin: clamp(80px, 13vw, 175px) auto 0; font: 400 clamp(1.65rem, 2.9vw, 3.65rem)/1.02 var(--serif); letter-spacing: -.05em; text-align: center; }

.method { background: #352a23; }
.method-image img { filter: saturate(.72) sepia(.12) brightness(.7); }
.method-copy > p { color: rgba(240, 230, 217, .72); }
.method-list, .method-list div { border-color: rgba(240, 230, 217, .32); }
.method-list dt { color: #d69b79; }
.contact { background: linear-gradient(128deg, #51362a, #241914 57%, #34251f); }
.contact-star { color: #d2916f; }
.contact-link { border-color: rgba(240, 230, 217, .6); }
.contact-link span { color: #d69b79; }
.contact-bottom { border-color: rgba(240, 230, 217, .25); }
.contact-bottom p { color: rgba(240, 230, 217, .7); }
.footer { background: #2a201b; color: rgba(240, 230, 217, .65); }

@media (max-width: 800px) {
  .rhythm-heading, .rhythm-list { grid-template-columns: 1fr; }
  .rhythm-list { gap: 30px; margin-top: 66px; }
  .rhythm-closing { margin-top: 78px; }
}
