.theme-foto-terrazzo { --cover-bg: var(--bg); --aside-bg: var(--bg); --aside-text: #fff; --title-color: var(--primary); --radius: var(--r, 18px); }
.theme-foto-terrazzo .inv-aside { background: linear-gradient(rgb(0 0 0 / .35), rgb(0 0 0 / .35)), var(--cover-img) center / cover; }
.theme-foto-terrazzo .inv-main, .theme-foto-terrazzo .sec { background: var(--bg); }
.theme-foto-terrazzo .sec-alt { background: var(--surface); }
.theme-foto-terrazzo .sec-title { font-family: var(--names-font, var(--font-script)); font-weight: var(--names-weight, 400); font-size: var(--title-size, 42px); }
.theme-foto-terrazzo .sec-sub { letter-spacing: .26em; }
.theme-foto-terrazzo .host-name, .theme-foto-terrazzo .closing .names { font-family: var(--names-font, var(--font-script)); font-weight: var(--names-weight, 400); color: var(--primary); }
.theme-foto-terrazzo .host-photo { border-radius: var(--photo-r, 999px 999px 16px 16px); border: 0; box-shadow: 0 0 0 6px var(--surface), 0 0 0 7px color-mix(in srgb, var(--accent) 60%, transparent), 0 24px 40px -26px rgb(0 0 0 / .45); }
.theme-foto-terrazzo .host-photo.ph { background: color-mix(in srgb, var(--primary) 12%, var(--surface)); color: var(--primary); }
.theme-foto-terrazzo .card, .theme-foto-terrazzo .wish, .theme-foto-terrazzo .field { background: var(--surface); border: 1px solid color-mix(in srgb, var(--primary) 14%, transparent); box-shadow: 0 18px 36px -30px rgb(0 0 0 / .45); }
.theme-foto-terrazzo .sec-alt .card, .theme-foto-terrazzo .sec-alt .wish { background: var(--bg); }
.theme-foto-terrazzo .btn-open, .theme-foto-terrazzo .btn { border-radius: var(--btn-r, 999px); background: var(--primary); color: var(--on-primary); box-shadow: none; animation: none; font-weight: 600; letter-spacing: .03em; }
.theme-foto-terrazzo .btn-outline { background: transparent; color: var(--primary); box-shadow: inset 0 0 0 1.5px var(--primary); }
.theme-foto-terrazzo .cd { background: var(--surface); color: var(--primary); border-radius: 14px; }
.theme-foto-terrazzo .gift { background: linear-gradient(135deg, var(--primary), color-mix(in srgb, var(--primary) 60%, #000)); }
.theme-foto-terrazzo .amp { font-family: var(--names-font, var(--font-script)); color: var(--accent); }
.theme-foto-terrazzo .inv-aside h1 { font-family: var(--names-font, var(--font-script)); font-weight: var(--names-weight, 400); }
.theme-foto-terrazzo { --cover-img: url(/assets/photos/terrazzo.webp); }
.theme-foto-terrazzo { --names-font: var(--font-heading); --names-weight: 700; --names-size: 42px; --title-size: 30px; }
.theme-foto-terrazzo { --r: 4px; --btn-r: 4px; --photo-r: 4px; } .theme-foto-terrazzo .card { box-shadow: 5px 5px 0 var(--accent); }
