
:root{--creme:#f7f3ea;--papier:#fffdf8;--encre:#1a2b4a;--encre2:#2c3e5c;--or:#c9a86a;--or2:#a8823f;--mut:#5c6773;--corps:#26313f}
*{box-sizing:border-box}
body{margin:0;background:var(--creme);color:var(--corps);font-family:'Inter',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.6}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;color:var(--encre);text-wrap:balance}
a{color:inherit}
main{display:block}
.nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px;padding:13px 26px;background:rgba(247,243,234,.9);backdrop-filter:blur(10px);border-bottom:1px solid rgba(26,43,74,.08)}
.nav .brand{font-family:'Playfair Display',serif;font-weight:700;letter-spacing:.13em;color:var(--encre);font-size:17px;text-decoration:none;margin-right:auto}
.nav a{text-decoration:none;color:var(--encre2);font-size:14px;font-weight:500}
.nav a:hover,.nav a:focus-visible{color:var(--or2)}
.nav .cta{background:var(--encre);color:#fff;padding:9px 16px;border-radius:999px}
a:focus-visible{outline:2px solid var(--or2);outline-offset:3px}
.hero{position:relative;min-height:78vh;display:flex;align-items:center;overflow:hidden}
.hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(247,243,234,.96),rgba(247,243,234,.84) 38%,rgba(247,243,234,.28) 62%,rgba(247,243,234,0) 82%)}
.hero .in{position:relative;z-index:2;max-width:1120px;margin:0 auto;padding:56px 30px;width:100%}
.hero h1{font-size:clamp(38px,8vw,88px);line-height:1.02;margin:.14em 0 .1em;font-weight:700}
.hero .lead{font-family:'Playfair Display',serif;font-style:italic;font-size:clamp(20px,3.2vw,29px);color:var(--encre2);max-width:600px;margin:0}
.hero .sub{font-size:16.5px;color:#3d4a60;max-width:560px;margin:14px 0 24px}
.eyebrow,.k{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--or2);font-weight:600;margin:0}
.rule{width:120px;height:2px;background:linear-gradient(90deg,var(--or),transparent);margin:14px 0 18px}
.btns a{display:inline-block;text-decoration:none;font-weight:600;font-size:15px;border-radius:999px;padding:13px 24px;margin:0 10px 10px 0}
.btns .p{background:var(--encre);color:#fff}
.btns .s{background:transparent;color:var(--encre);border:1.5px solid var(--encre)}
section{max-width:1040px;margin:0 auto;padding:64px 30px}
.ph{max-width:1040px;margin:0 auto;padding:64px 30px 8px}
h2{font-size:clamp(26px,5vw,42px);margin:.15em 0 0}
h3{font-size:clamp(19px,2.6vw,24px);margin:32px 0 6px}
.lead{font-family:'Playfair Display',serif;font-size:clamp(19px,2.7vw,25px);color:var(--encre2);line-height:1.5;max-width:720px;margin:0;font-weight:500}
.big{font-family:'Playfair Display',serif;font-size:clamp(19px,2.6vw,25px);color:var(--encre2);line-height:1.55;max-width:760px;margin:20px 0 0;font-weight:500}
p{max-width:70ch}
section p{font-size:16.5px;color:#39445a}
ul,ol{max-width:70ch;font-size:16.5px;color:#39445a}
li{margin:6px 0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:28px}
.card{background:var(--papier);border:1px solid rgba(26,43,74,.09);border-radius:16px;padding:22px;box-shadow:0 10px 30px rgba(26,43,74,.05)}
.card .t{font-family:'Playfair Display',serif;font-size:21px;color:var(--encre);font-weight:600}
.card .d{font-size:15.5px;color:#4a5769;margin-top:8px;line-height:1.5}
.card a{color:var(--or2);font-weight:600;text-decoration:none}
.media{background:var(--papier);border:1px dashed rgba(26,43,74,.25);border-radius:16px;padding:26px;margin-top:24px;color:var(--mut);font-size:15px}
.media strong{color:var(--encre)}
figure{margin:26px 0}
figure img{width:100%;border-radius:16px;display:block}
figcaption{font-size:13.5px;color:var(--mut);margin-top:8px}
.steps{counter-reset:s;list-style:none;padding:0}
.steps li{counter-increment:s;position:relative;padding-left:52px;margin:20px 0}
.steps li::before{content:counter(s);position:absolute;left:0;top:-2px;width:34px;height:34px;border-radius:50%;background:var(--encre);color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center;font-family:'Inter',sans-serif}
.quote{border-left:3px solid var(--or);padding:4px 0 4px 20px;font-family:'Playfair Display',serif;font-style:italic;font-size:clamp(19px,2.6vw,24px);color:var(--encre2);max-width:720px}
.note{background:var(--papier);border-left:3px solid var(--or);padding:16px 20px;border-radius:0 12px 12px 0;font-size:15px;color:#4a5769;max-width:72ch}
table{border-collapse:collapse;width:100%;font-size:15.5px;margin-top:20px}
th,td{text-align:left;padding:11px 14px;border-bottom:1px solid rgba(26,43,74,.1);vertical-align:top}
th{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--or2)}
.wrap{overflow-x:auto}
.foot{max-width:1040px;margin:0 auto;padding:36px 30px 70px;color:var(--mut);font-size:13.5px;border-top:1px solid rgba(26,43,74,.08)}
.foot nav{margin-bottom:10px;display:flex;flex-wrap:wrap;gap:6px 18px}
.foot a{color:var(--or2);text-decoration:none}
.foot .cr{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#8a94a2;margin-top:14px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
