/* Shared Novella typefaces; styles scoped to the services screen. */
.mini-catalog { font-family: 'Golos Text', Arial, sans-serif; color: #30382f; }
.mini-catalog h1,.mini-catalog h2,.mini-catalog h3 { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 400; line-height: 1.06; letter-spacing: -.025em; text-wrap: balance; }
.mini-catalog em { color: #8b714a; font-weight: 400; }
.mini-catalog a { text-decoration: none; }
.mini-catalog a:focus-visible,.mini-catalog button:focus-visible { outline: 2px solid #8b714a; outline-offset: 4px; }
.mini-catalog [id] { scroll-margin-top: 24px; }
.mc-kicker { font-size: 12px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: #806740; }
.mc-intro { padding: 22px 4px 28px; }
.mc-intro h1 { font-size: clamp(56px, 14vw, 75px); margin: 22px 0; }
.mc-intro > p:last-child { font-size: 17px; font-weight: 500; line-height: 1.7; color: #4d554b; }
.mc-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:6px 0 36px; }
.mc-nav a { display:flex; align-items:center; min-height:56px; padding:12px 15px; border:1px solid rgba(255,255,255,.88); border-radius:18px; color:#343a31; font-size:14px; font-weight:500; line-height:1.35; background:linear-gradient(135deg,rgba(255,255,255,.76),rgba(255,255,255,.36) 58%,rgba(222,206,175,.28)); box-shadow:inset 0 1px 0 rgba(255,255,255,.68),0 8px 24px rgba(71,54,32,.075); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); transition:background .2s ease,transform .2s ease,box-shadow .2s ease; }
.mc-nav a:hover,.mc-nav a:focus-visible { color:#715733; background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(238,226,205,.68)); box-shadow:inset 0 1px 0 #fff,0 10px 25px rgba(71,54,32,.11); }
.mc-nav a:active { transform:translateY(1px); }
.mc-index h2 { font-size: 39px; margin-bottom: 18px; }
.mc-index > p { font-size: 15px; font-weight: 500; line-height: 1.7; color: #545b4e; margin-bottom: 24px; }
.mc-index ol { padding: 0; list-style: none; }
.mc-index li { border-top: 1px solid #c8bba080; }
.mc-index li:last-child { border-bottom: 1px solid #c8bba080; }
.mc-index a { display:grid; grid-template-columns: 22px minmax(0,1fr) 14px; gap: 7px 10px; padding: 19px 2px; }
.mc-index-number { grid-column:1; grid-row:1; font-size:12px; color:#806740; padding-top:3px; }
.mc-index-name { grid-column:2; font-size:16px; font-weight:500; line-height:1.5; }
.mc-index-price { grid-column:2; font-size:15px; font-weight:500; }
.mc-index-arrow { grid-column:3; grid-row:1; color:#806740; }
.mc-amount { white-space:nowrap; }
.mc-index-price .mc-unit { font-size:13px; color:#555b4f; }
.mc-group { margin-top: 48px; }
.mc-group-heading h2 { font-size: 48px; margin: 12px 0 22px; }
.mc-visual { margin:0 0 32px; border-radius:22px; border:1px solid #fff; overflow:hidden; box-shadow:0 14px 36px #5d47271c; background:#e8dfd0; }
.mc-visual img { display:block; width:100%; height:auto; }
.mc-service { padding: 30px 2px 35px; border-top: 1px solid #c8bba080; }
.mc-service h3 { font-size:39px; margin:16px 0 23px; }
.mc-copy p { font-size:17px; font-weight:500; line-height:1.75; margin-bottom:20px; }
.mc-includes { margin:28px 0; }
.mini-catalog h4 { font-size:13px; font-weight:500; text-transform:uppercase; letter-spacing:.055em; line-height:1.5; margin-bottom:16px; }
.mc-includes ul { list-style:none; padding:0; }
.mc-includes li { position:relative; padding-left:19px; font-size:16px; font-weight:500; line-height:1.7; margin:12px 0; color:#414b3f; }
.mc-includes li::before { content:''; position:absolute; top:.7em; left:1px; height:4px; width:4px; background:#9a8059; border-radius:50%; }
.mc-price-panel { margin-top:28px; padding:26px; border:1px solid #fff; border-radius:23px; background:linear-gradient(130deg,#fff9,#f7f2e966,#dfd3bd40); box-shadow:inset 0 0 0 1px #fff6,0 14px 34px #5d47270c; }
.mc-price { font-family:'Cormorant Garamond',Georgia,serif; font-size:44px; line-height:1.1; margin-top:15px; overflow-wrap:anywhere; }
.mc-price .mc-from { font-family:'Golos Text',Arial,sans-serif; font-size:16px; }
.mc-price .mc-unit { display:block; font-family:'Golos Text',Arial,sans-serif; font-size:16px; font-weight:500; margin-top:10px; }
.mc-price-note,.mc-exclusion { font-size:16px; font-weight:500; line-height:1.7; margin-top:18px; }
.mc-exclusion { color:#665232; }
.mc-price-details { border-top:1px solid #c8bba080; margin-top:24px; padding-top:24px; }
.mc-price-details p { font-size:16px; font-weight:500; line-height:1.75; }
.mc-price-details .mc-footnote { margin-top:18px; color:#665232; }
.mc-discuss { width:100%; display:flex; align-items:center; justify-content:space-between; gap:14px; text-align:left; margin-top:25px; padding:17px; min-height:54px; font-size:16px; font-weight:500; line-height:1.5; color:#493d2c; border:1px solid #bda581; border-radius:11px; background:linear-gradient(135deg,#fff9,#e4d6c047); cursor:pointer; }
.mc-return { display:block; width:fit-content; margin:0 0 0 auto; padding:12px 0; min-height:44px; font-size:15px; color:#695638; }
.mc-closing { text-align:center; padding:48px 2px 25px; }
.mc-closing h2 { font-size:47px; margin:24px 0; }
.mc-closing > p:last-of-type { font-size:17px; font-weight:500; line-height:1.75; }
@media(max-width:360px) {
 .mc-nav a { padding-inline:12px; }
 .mc-price-panel { padding:21px; }
 .mc-service h3 { font-size:36px; }
 .mc-price { font-size:38px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
