/**
 * Cérémonie d'hommage — charte sobre et lumineuse (ivoire, ardoise, vert sauge).
 * Polices Google hébergées localement (EB Garamond, Jost). S'insère entre le header
 * et le footer du thème, en pleine largeur.
 */
/* EB Garamond + Jost, hébergées localement (RGPD). */
@font-face { font-family:'EB Garamond'; font-style:italic; font-weight:400; font-display:swap;
	src:url("fonts/ebgaramond-400i-lat.woff2") format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family:'EB Garamond'; font-style:italic; font-weight:400; font-display:swap;
	src:url("fonts/ebgaramond-400i-latext.woff2") format('woff2'); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family:'EB Garamond'; font-style:normal; font-weight:400; font-display:swap;
	src:url("fonts/ebgaramond-400n-lat.woff2") format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family:'EB Garamond'; font-style:normal; font-weight:400; font-display:swap;
	src:url("fonts/ebgaramond-400n-latext.woff2") format('woff2'); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family:'Jost'; font-style:normal; font-weight:400; font-display:swap;
	src:url("fonts/jost-400n-lat.woff2") format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family:'Jost'; font-style:normal; font-weight:400; font-display:swap;
	src:url("fonts/jost-400n-latext.woff2") format('woff2'); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family:'Jost'; font-style:normal; font-weight:500; font-display:swap;
	src:url("fonts/jost-500n-lat.woff2") format('woff2'); unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family:'Jost'; font-style:normal; font-weight:500; font-display:swap;
	src:url("fonts/jost-500n-latext.woff2") format('woff2'); unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }

.amry-cer {
	--cer-bg:        #f7f5f1;
	--cer-bg-alt:    #efece5;
	--cer-ink:       #3a3f3c;
	--cer-ink-soft:  #6f736e;
	--cer-sage:      #95a08d;
	--cer-sage-deep: #66715f;
	--cer-line:      #e4e0d8;
	--cer-serif:     'EB Garamond', Georgia, 'Times New Roman', serif;
	--cer-label:     'Jost', ui-sans-serif, system-ui, sans-serif;

	background: var(--cer-bg);
	color: var(--cer-ink);
	font-family: var(--cer-serif);
	font-size: 1.12rem;
	line-height: 1.75;
	/* Pleine largeur, même si le thème contraint le contenu. */
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	padding: clamp(2.5rem, 6vw, 4.5rem) 0 0;
}

.amry-cer * { box-sizing: border-box; }

.amry-cer__wrap { max-width: 900px; margin: 0 auto; padding: 0 clamp(1.4rem, 5vw, 3rem); }

.amry-cer__label {
	font-family: var(--cer-label);
	font-size: .72rem;
	letter-spacing: .28em;
	text-transform: uppercase;
	color: var(--cer-sage-deep);
	font-weight: 500;
}

.amry-cer__sprig { display: block; margin: 0 auto; width: 120px; height: auto; color: var(--cer-sage); }

/* Hero */
.amry-cer__hero { text-align: center; padding: 1rem 0 1.5rem; }
.amry-cer__hero .amry-cer__label { margin-bottom: 1.6rem; display: inline-block; }
.amry-cer__title {
	font-family: var(--cer-serif);
	font-weight: 400;
	font-size: clamp(2.4rem, 6vw, 3.8rem);
	line-height: 1.12;
	letter-spacing: .01em;
	margin: 0;
	color: var(--cer-ink);
	text-wrap: balance;
}
.amry-cer__meta { margin-top: 1.4rem; color: var(--cer-ink-soft); font-size: 1.1rem; }
.amry-cer__meta span { white-space: nowrap; }
.amry-cer__meta i { color: var(--cer-line); font-style: normal; margin: 0 .7rem; }

.amry-cer__rule { display: flex; align-items: center; justify-content: center; margin: 2.4rem 0; }

/* Mot d'accompagnement */
.amry-cer__word { text-align: center; max-width: 40ch; margin: 0 auto; }
.amry-cer__word p {
	font-style: italic;
	font-size: clamp(1.3rem, 3vw, 1.7rem);
	line-height: 1.5;
	color: var(--cer-ink);
	margin: 0;
}

/* CTA */
.amry-cer__cta-wrap { text-align: center; margin: 3rem 0 1rem; }
.amry-cer__cta {
	display: inline-block;
	padding: 1rem 2.4rem;
	font-family: var(--cer-label);
	font-size: .78rem;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--cer-sage-deep);
	text-decoration: none;
	border: 1px solid var(--cer-sage);
	background: transparent;
	transition: background .35s ease, color .35s ease;
}
.amry-cer__cta:hover,
.amry-cer__cta:focus-visible { background: var(--cer-sage); color: #fff; }

.amry-cer__closed { color: var(--cer-ink-soft); font-size: 1.1rem; line-height: 1.6; }

/* Bande réassurance */
.amry-cer__band { background: var(--cer-bg-alt); margin-top: 4rem; padding: clamp(3.5rem, 7vw, 5.5rem) 0; }
.amry-cer__pillars { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: clamp(2rem, 4vw, 3.2rem); text-align: center; }
.amry-cer__pillar svg { width: 30px; height: 30px; color: var(--cer-sage); margin-bottom: 1rem; }
.amry-cer__pillar h3 { font-family: var(--cer-serif); font-weight: 400; font-size: 1.3rem; margin: 0 0 .5rem; color: var(--cer-ink); }
.amry-cer__pillar p { color: var(--cer-ink-soft); font-size: 1rem; margin: 0; }

/* ---------------------------------------------------- Formulaire (côté famille) */

.amry-cer-form {
	--cer-bg: #f7f5f1; --cer-ink: #3a3f3c; --cer-ink-soft: #6f736e;
	--cer-sage: #95a08d; --cer-sage-deep: #66715f; --cer-line: #e4e0d8;
	--cer-serif: 'EB Garamond', Georgia, serif; --cer-label: 'Jost', sans-serif;
	max-width: 560px; margin: 2rem auto; background: var(--cer-bg);
	border: 1px solid var(--cer-line); padding: clamp(2rem, 5vw, 3rem);
	font-family: var(--cer-serif); color: var(--cer-ink);
}
.amry-cer-form h2 { font-family: var(--cer-serif); font-weight: 400; font-size: 1.9rem; text-align: center; margin: 0 0 .3rem; }
.amry-cer-form__intro { text-align: center; color: var(--cer-ink-soft); margin: 0 0 1.8rem; }
.amry-cer-form .field { margin-bottom: 1.2rem; }
.amry-cer-form label { display: block; font-family: var(--cer-label); font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; color: var(--cer-ink-soft); margin-bottom: .4rem; }
.amry-cer-form input, .amry-cer-form select {
	width: 100%; padding: .7rem .8rem; font-family: var(--cer-serif); font-size: 1.05rem;
	color: var(--cer-ink); background: #fff; border: 1px solid var(--cer-line);
}
.amry-cer-form .field-row { display: flex; gap: 1rem; }
.amry-cer-form .field-row .field { flex: 1; }
.amry-cer-form button {
	width: 100%; margin-top: .6rem; padding: 1rem; cursor: pointer;
	font-family: var(--cer-label); font-size: .78rem; letter-spacing: .18em; text-transform: uppercase;
	color: #fff; background: var(--cer-sage); border: 1px solid var(--cer-sage);
	transition: background .3s ease;
}
.amry-cer-form button:hover { background: var(--cer-sage-deep); }

/* Le lien de partage, après création */
.amry-cer-share {
	max-width: 560px; margin: 2rem auto; text-align: center;
	background: #f7f5f1; border: 1px solid var(--cer-line, #e4e0d8); padding: 2rem;
	font-family: 'EB Garamond', Georgia, serif;
}
.amry-cer-share__link { display: flex; gap: .5rem; margin-top: 1rem; }
.amry-cer-share__link input { flex: 1; padding: .6rem .8rem; border: 1px solid var(--cer-line, #e4e0d8); background: #fff; font-family: inherit; }
.amry-cer-share__link button { padding: .6rem 1.2rem; background: #95a08d; color: #fff; border: 0; cursor: pointer; font-family: 'Jost', sans-serif; letter-spacing: .1em; text-transform: uppercase; font-size: .72rem; }
