/*
Theme Name: After Life Editorial
Author: After Life
Description: Thème éditorial After Life — versione di preparazione locale, integrazioni escluse.
Version: 0.2.0
Requires PHP: 8.0
Text Domain: afterlife-editorial
*/




:root {
  --gold: #C9962A;
  --cream: #FAF7F2;
  --warm-gray: #6B6560;
  --charcoal: #2C2825;
  --blush: #E8D5C4;
}

html { scroll-behavior: smooth; }

body {
  background-color: var(--cream);
  color: var(--charcoal);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}

*, *::before, *::after { box-sizing: border-box; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
}
.legal-page { min-height: 100vh; padding: 7rem 1.5rem 5rem; background: var(--cream); }
.legal-page article { max-width: 760px; margin: 0 auto; }
.legal-page h1, .legal-page h2 { font-family: Georgia, "Times New Roman", serif; color: var(--charcoal); }
.legal-page h1 { font-size: clamp(2.3rem, 6vw, 4rem); margin-bottom: 1rem; }
.legal-page h2 { font-size: 1.35rem; margin: 2.25rem 0 0.7rem; }
.legal-page p, .legal-page li { color: var(--warm-gray); line-height: 1.75; }
.legal-page a { color: #805b12; }
.legal-back { display: inline-block; margin-bottom: 2.5rem; font-weight: 600; text-decoration: none; }
.ps-page { background: #f6f0e5; color: var(--charcoal); }
.ps-header { max-width: none; margin: 0; padding: 1.5rem clamp(1.25rem, 5vw, 5rem); display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(72, 59, 47, .12); background: rgba(250,247,242,.9); }
.ps-header img { width: 150px; height: auto; }
.ps-header a { color: var(--charcoal); text-decoration: none; font-weight: 600; letter-spacing: .04em; }
.ps-hero { min-height: 82vh; display: grid; align-items: center; padding: 6rem clamp(1.5rem, 8vw, 9rem); background-image: linear-gradient(90deg, rgba(250,247,242,.9) 0%, rgba(250,247,242,.68) 43%, rgba(250,247,242,.03) 76%), url('assets/post-scriptum-dandelion.png'); background-position: center; background-size: cover; }
.ps-hero-inner { max-width: 660px; text-align: left; }
.ps-kicker { color: #805b12; text-transform: uppercase; letter-spacing: .24em; font-weight: 700; font-size: .72rem; }
.ps-hero h1 { font-family: Georgia, "Times New Roman", serif; font-size: clamp(3.8rem, 9vw, 7.8rem); font-weight: 400; letter-spacing: -.055em; line-height: .92; margin: 1.2rem 0 2rem; }
.ps-lead { max-width: 620px; margin: 0 0 2.2rem; font-family: Georgia, "Times New Roman", serif; font-size: clamp(1.15rem, 2.4vw, 1.45rem); line-height: 1.65; color: #5e554e; }
.ps-price { display: block; font-family: Georgia, "Times New Roman", serif; font-size: 2rem; margin-bottom: 1.5rem; }
.ps-button { display: inline-block; padding: .95rem 1.8rem; border: 1px solid #755315; border-radius: 2px; background: rgba(250,247,242,.58); color: #67480f; text-decoration: none; font-weight: 700; letter-spacing: .035em; transition: background .2s, color .2s; }
.ps-button:hover { background: #755315; color: white; }
.ps-registered { margin-top: 1.5rem; color: #736960; font-size: .68rem; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; }
.ps-section { padding: clamp(5rem, 10vw, 9rem) 2rem; position: relative; }
.ps-section.alt { background: #292522; color: white; }
.ps-wrap { max-width: 1000px; margin: 0 auto; }
.ps-section h2 { max-width: 900px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.15rem, 5vw, 4.2rem); font-weight: 400; letter-spacing: -.03em; line-height: 1.18; margin-bottom: 2rem; }
.ps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.ps-card { padding: 2.1rem 1.8rem; border: 1px solid rgba(128,91,18,.25); border-radius: 2px; background: rgba(255,253,248,.7); color: var(--charcoal); box-shadow: 0 18px 50px rgba(64,49,35,.06); }
.ps-card strong { display: block; color: #805b12; margin-bottom: 1rem; letter-spacing: .08em; text-transform: uppercase; font-size: .78rem; }
.ps-card p, .ps-copy { line-height: 1.75; color: var(--warm-gray); }
.ps-section.alt .ps-copy { color: rgba(255,255,255,.76); }
.ps-intro { max-width: 720px; margin: 0 0 4rem; font-size: 1.08rem; }
.ps-process { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid rgba(128,91,18,.28); }
.ps-step { display: grid; grid-template-columns: 3.2rem 1fr; gap: 1rem; padding: 2rem 2.25rem 2rem 0; border-bottom: 1px solid rgba(128,91,18,.22); }
.ps-step:nth-child(odd) { border-right: 1px solid rgba(128,91,18,.22); }
.ps-step:nth-child(even) { padding-left: 2.25rem; }
.ps-step > span { color: #a47a28; font-family: Georgia, "Times New Roman", serif; font-size: 1.15rem; }
.ps-step h3 { margin: 0 0 .65rem; font-family: Georgia, "Times New Roman", serif; font-size: 1.55rem; font-weight: 400; }
.ps-step p { margin: 0; color: var(--warm-gray); line-height: 1.65; }
.ps-investment { background: #e8ddca; }
.ps-investment-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(3rem, 8vw, 7rem); align-items: start; }
.ps-investment-grid h2 { font-size: clamp(2.15rem, 4.2vw, 3.6rem); }
.ps-note { margin-top: 2rem; color: #71665d; font-size: .82rem; line-height: 1.6; }
.ps-includes { padding: clamp(2rem, 4vw, 3.2rem); background: rgba(255,253,248,.72); border: 1px solid rgba(128,91,18,.24); box-shadow: 0 24px 70px rgba(64,49,35,.08); }
.ps-includes-title { margin: 0 0 1.5rem; color: #805b12; font-size: .76rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.ps-includes ul { display: grid; gap: .85rem; margin: 0; padding: 0; list-style: none; }
.ps-includes li { position: relative; padding-left: 1.45rem; color: #514942; line-height: 1.5; }
.ps-includes li::before { content: '—'; position: absolute; left: 0; color: #a47a28; }
.ps-investment-price { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-top: 2.25rem; padding-top: 1.5rem; border-top: 1px solid rgba(128,91,18,.24); }
.ps-investment-price small { color: #71665d; font-size: .73rem; letter-spacing: .13em; text-transform: uppercase; }
.ps-investment-price strong { font-family: Georgia, "Times New Roman", serif; font-size: clamp(2rem, 4vw, 2.8rem); font-weight: 400; }
.ps-quote { position: relative; }
.ps-quote::before { content: '✦'; position: absolute; left: -3.5rem; top: -.8rem; color: var(--gold); font-size: 1.2rem; }
.ps-attribution { color: rgba(255,255,255,.5); font-size: .85rem; letter-spacing: .08em; text-transform: uppercase; }
.ps-cta { text-align: center; }
@media (max-width: 760px) {
  .ps-grid { grid-template-columns: 1fr; }
  .ps-process, .ps-investment-grid { grid-template-columns: 1fr; }
  .ps-step, .ps-step:nth-child(even) { padding: 1.6rem 0; border-right: 0; }
  .ps-header { padding-inline: 1.25rem; }
  .ps-header img { width: 125px; }
  .ps-hero { min-height: 88vh; align-items: end; padding-bottom: 4rem; background-image: linear-gradient(180deg, rgba(250,247,242,.08) 0%, rgba(250,247,242,.58) 38%, rgba(250,247,242,.96) 66%), url('assets/post-scriptum-dandelion.png'); background-position: 65% center; }
  .ps-quote::before { display: none; }
}

.editorial-site { --paper:#f7f2e9; --ink:#302a25; --ochre:#825e23; color:var(--ink); background:var(--paper); font-family:Arial,Helvetica,sans-serif; }
.editorial-site h1,.editorial-site h2,.editorial-site h3,.footer-brand { font-family:Georgia,'Times New Roman',serif; font-weight:400; }
.editorial-site p { line-height:1.8; }
.editorial-site h2 { font-size:clamp(2.3rem,4.8vw,4.5rem); line-height:1.12; letter-spacing:-.035em; margin:0 0 1.6rem; }
.editorial-site em { color:var(--ochre); font-weight:400; }
.eyebrow { font-size:.75rem; text-transform:uppercase; letter-spacing:.18em; font-weight:600; color:#825e23; margin:0 0 1.7rem; }
.editorial-nav { padding:1.2rem 5%; display:flex; align-items:center; justify-content:space-between; gap:2rem; border-bottom:1px solid #dcd2c3; }
.editorial-nav img { object-fit:contain; display:block; }
.editorial-nav nav { display:flex; flex-wrap:wrap; gap:1.6rem; align-items:center; }
.editorial-nav a { color:#494038; text-decoration:none; font-size:.875rem; }
.editorial-hero { min-height:80vh; padding:7rem 8%; display:flex; align-items:center; background:linear-gradient(90deg,rgba(250,247,242,.92),rgba(250,247,242,.7) 42%,rgba(250,247,242,0) 78%),url('assets/post-scriptum-dandelion.png') center/cover; }
.editorial-hero > div { max-width:720px; }
.editorial-site h1 { font-size:clamp(3.2rem,6.7vw,6.5rem); letter-spacing:-.045em; line-height:1.04; margin:0 0 2rem; }
.hero-description { max-width:550px; font-family:Georgia,serif; font-size:1.25rem; color:#5d5147; }
.editorial-actions { display:flex; flex-wrap:wrap; align-items:center; gap:1.8rem; margin:2.3rem 0; }
.ink-button { display:inline-block; padding:1rem 1.6rem; color:#63491c; border:1px solid #825e23; text-decoration:none; background:#faf7f288; font-size:.875rem; letter-spacing:.03em; font-weight:600; }
.ink-button:hover { background:#825e23; color:white; }
.text-link { display:inline-block; color:#70501b; text-decoration:none; border-bottom:1px solid #b7a588; padding-bottom:.35rem; font-size:.9rem; }
.registration { color:#6f6358; font-size:.75rem; letter-spacing:.12em; text-transform:uppercase; }
.editorial-section { padding:clamp(4rem,8vw,8rem) max(6%,calc((100% - 1160px)/2)); scroll-margin-top:2rem; }
.introduction { display:grid; grid-template-columns:1fr 2fr; gap:3rem; border-bottom:1px solid #dcd2c3; }
.introduction p:not(.eyebrow) { max-width:680px; color:#64594f; }
.editorial-note { font-family:Georgia,serif; font-size:1.3rem; font-style:italic; padding-top:1rem; }
.creation { display:grid; grid-template-columns:48px 1fr auto; gap:2rem; padding:3rem 1rem; border-top:1px solid #cabda9; }
.creation h3 { font-size:clamp(2rem,3.5vw,3rem); margin:0 0 1rem; letter-spacing:-.03em; }
.creation p:not(.eyebrow):not(.creation-price) { max-width:670px; color:#65594f; margin-bottom:1.5rem; }
.creation-number { font-family:Georgia,serif; font-style:italic; font-size:1.8rem; color:#9c824f; }
.creation .eyebrow { margin-bottom:.8rem; }
.creation-price { font-family:Georgia,serif; font-size:1.6rem; white-space:nowrap; margin:0; }
.featured { background:#ece3d3; padding:3rem 1.5rem; }
.service-note { color:#706458; font-size:.875rem; max-width:800px; }
.process { background:#302a25; color:#f8f3e9; }
.process .eyebrow,.process em { color:#d2b575; }
.process ol { list-style:none; display:grid; grid-template-columns:repeat(3,1fr); padding:0; gap:3rem; }
.process li > span { color:#d2b575; font-size:.8rem; letter-spacing:.12em; }
.process h3 { font-size:2rem; margin:1rem 0; }
.process li p { color:#ded3c4; border-top:1px solid #64584a; padding-top:1.4rem; }
.listening { background:#eee6d8; }
.story { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:2rem; border-top:1px solid #cbbda8; padding:2rem 0; }
.story h3 { font-size:2.5rem; margin:0; }
.story p { color:#66594b; margin:.4rem 0; }
.story audio { width:100%; }
.author { display:grid; grid-template-columns:1fr 1.3fr; gap:5rem; align-items:center; }
.author figure { margin:0; }
.author img { display:block; width:100%; height:auto; max-height:580px; object-fit:cover; object-position:center 30%; }
.author figcaption { font-size:.75rem; letter-spacing:.1em; text-transform:uppercase; color:#726451; margin-top:1rem; }
.author p { color:#65594f; }
.counseling { text-align:center; background:#eee6d8; }
.counseling > p:not(.eyebrow) { max-width:690px; margin:1.5rem auto 2rem; color:#64594f; }
.editorial-contact #contatti { background:#302a25 !important; }
.editorial-contact h2 { font-family:Georgia,serif !important; font-weight:400 !important; }
.editorial-contact input:not([type=radio]):not([type=checkbox]),.editorial-contact select,.editorial-contact textarea { border-radius:0 !important; font-size:1rem !important; }
.editorial-contact button { border-radius:0 !important; }
.editorial-contact label { font-size:.9rem !important; }
.editorial-footer { background:#211e1b; color:#d0c5b7; display:grid; grid-template-columns:1.2fr 1fr .7fr; gap:3rem; padding:4rem 6% 2rem; font-family:Arial,sans-serif; font-size:.875rem; line-height:1.9; }
.editorial-footer a { color:#e3d2ad; text-decoration:none; }
.editorial-footer .footer-brand { font-size:2rem; }
.editorial-footer address { font-style:normal; }
.editorial-footer nav { display:flex; flex-direction:column; }
.editorial-footer small { grid-column:1/-1; border-top:1px solid #4c4238; padding-top:1.5rem; font-size:.75rem; }
@media(max-width:800px) { .editorial-nav { flex-direction:column; gap:1rem; } .editorial-nav nav { justify-content:center; gap:.8rem 1.2rem; } .editorial-hero { min-height:700px; padding:4rem 6%; background-position:60% center; } .introduction,.author { grid-template-columns:1fr; gap:2rem; } .creation { grid-template-columns:1fr; gap:.8rem; } .creation-number { display:none; } .creation-price { grid-row:1; text-align:right; } .process ol { grid-template-columns:1fr; gap:1rem; } .story { grid-template-columns:1fr; gap:1rem; } .author img { max-height:450px; } .editorial-footer { grid-template-columns:1fr; gap:2rem; } }

body{margin:0} img{max-width:100%} .contact-wordpress{background:#302a25;color:#faf7f2}.contact-wordpress .eyebrow,.contact-wordpress em{color:#dfc18a}.contact-wordpress a{color:#ecd6ae}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;background:white;padding:1rem;z-index:99}.preview-notice{margin:0;padding:.6rem 1rem;background:#302a25;color:white;font:14px Arial;text-align:center}.wp-content-area{max-width:900px;margin:4rem auto;padding:0 1.5rem}.contact-form{display:grid;gap:1.25rem;max-width:820px;margin-top:2rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-form label{display:grid;gap:.45rem}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{width:100%;padding:.85rem;border:1px solid #7d7165;background:#faf7f2;color:#302a25;font:inherit}.contact-form .ink-button{width:max-content}.contact-consent{grid-template-columns:auto 1fr!important;align-items:start}.contact-honeypot{position:absolute!important;left:-9999px!important}.contact-status{min-height:1.5em}.contact-alternative{margin-top:1.5rem}@media(max-width:700px){.contact-grid{grid-template-columns:1fr}}
