:root {
  --color-ink:#211e19; --color-muted:#6f6254; --color-paper:#efe3cb; --color-surface:#f8efdc;
  --color-accent:#7d2118; --color-accent-dark:#57130f; --color-line:#bca98d; --color-soft:#e3d4b9;
  --font-sans:Georgia,"Times New Roman",serif; --font-serif:Georgia,"Times New Roman",serif;
  --space-1:.35rem; --space-2:.7rem; --space-3:1rem; --space-4:1.5rem; --space-5:2.25rem; --space-6:clamp(3rem,7vw,6rem);
  --reading:72ch; --wide:76rem; --border:1px solid var(--color-line); --radius:.55rem; --shadow:0 .3rem 1.3rem #18312614;
}
*{box-sizing:border-box}html{color-scheme:light;scroll-behavior:smooth}body{margin:0;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-sans);font-size:clamp(1rem,.96rem + .15vw,1.1rem);line-height:1.65}body>main{width:min(var(--reading),calc(100% - 2rem));margin-inline:auto;padding-block:var(--space-5) var(--space-6)}
h1,h2,h3,h4,h5,h6{line-height:1.18;text-wrap:balance;margin:1.7em 0 .55em;font-family:var(--font-serif)}h1{font-size:clamp(2.2rem,6vw,4.6rem);margin-top:0}h2{font-size:clamp(1.5rem,3vw,2.2rem)}p,ul,ol,dl,blockquote,pre,table,figure{margin-block:0 1.2em}a{color:var(--color-accent-dark);text-decoration-thickness:.09em;text-underline-offset:.15em}a:hover{text-decoration-thickness:.16em}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:.2rem solid #e09124;outline-offset:.2rem}
img,video{display:block;max-width:100%;height:auto}audio{max-width:100%}figure{margin-inline:0}figcaption,small,.content-type{color:var(--color-muted);font-size:.86rem}blockquote{border-left:.3rem solid var(--color-accent);padding:.2rem 0 .2rem var(--space-4);font-family:var(--font-serif);font-size:1.1em}code{background:var(--color-soft);border-radius:.2rem;padding:.08em .3em}pre{max-width:100%;overflow:auto;padding:var(--space-3);background:#18201d;color:#f7f5ef;border-radius:var(--radius)}pre code{background:none;padding:0}.table-container,.prose{overflow-wrap:anywhere}.prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}th,td{border:var(--border);padding:.55rem;text-align:left}hr{border:0;border-top:var(--border);margin-block:var(--space-5)}details{border:var(--border);border-radius:var(--radius);padding:var(--space-2) var(--space-3)}summary{cursor:pointer;font-weight:700}
button,.button,input{font:inherit;border-radius:var(--radius)}button,.button{min-height:2.75rem;border:0;padding:.65rem 1rem;background:var(--color-accent);color:white;font-weight:700;cursor:pointer}.button{display:inline-flex;align-items:center;text-decoration:none}.button:hover,button:hover{background:var(--color-accent-dark)}input{min-width:0;width:100%;border:var(--border);background:white;color:inherit;padding:.55rem .7rem}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:10;transform:translateY(-200%);background:white;padding:.7rem}.skip-link:focus{transform:none}
.site-header{width:min(var(--wide),calc(100% - 2rem));margin:auto;padding-block:var(--space-3);display:flex;align-items:center;gap:var(--space-4);border-bottom:var(--border)}.site-name{font-family:var(--font-serif);font-size:1.35rem;font-weight:700;text-decoration:none;white-space:nowrap}.site-header nav{flex:1}.site-header ul,.breadcrumbs ol,.tags ul,.dictionary-references ul,.tag-cloud{list-style:none;padding:0;display:flex;gap:var(--space-3);flex-wrap:wrap;margin:0}.site-header nav a{display:block;padding:.5rem 0}.search-shortcut{display:grid;grid-template-columns:auto minmax(7rem,12rem) auto;align-items:center;gap:.45rem}.search-shortcut label{font-size:.85rem}.site-footer{border-top:var(--border);text-align:center;padding:var(--space-4);color:var(--color-muted)}
.home{min-height:calc(100vh - 7rem);display:grid;place-items:center;text-align:center}.home>div{max-width:44rem}.home h1{font-size:clamp(4rem,16vw,9rem);letter-spacing:-.055em;margin-bottom:.2em}.home p{font-size:clamp(1.1rem,2vw,1.4rem)}.eyebrow,.content-type{text-transform:uppercase;letter-spacing:.1em;font-weight:750}.primary{margin-top:var(--space-3);font-size:1.15rem;padding-inline:1.4rem}
.breadcrumbs{margin-bottom:var(--space-5);font-size:.9rem}.breadcrumbs li+li::before{content:"/";margin-right:var(--space-3);color:var(--color-muted)}.lead{font-family:var(--font-serif);font-size:1.25rem;color:var(--color-muted)}.parent-portal,.dictionary-references,.tags{border-top:var(--border);padding-top:var(--space-3);margin-top:var(--space-5)}.dictionary-references h2,.tags h2{font-size:1.15rem}.cards,.search-results{list-style:none;padding:0;display:grid;gap:var(--space-3)}.cards article,.search-results article{background:var(--color-surface);border:var(--border);border-radius:var(--radius);padding:var(--space-4);box-shadow:var(--shadow)}.cards h2,.cards h3,.search-results h2{margin-top:0}.content-type{margin-bottom:.35rem}.letter-nav{display:flex;gap:.5rem;flex-wrap:wrap;margin-block:var(--space-4)}.letter-nav a{display:grid;place-items:center;min-width:2.5rem;min-height:2.5rem;border:var(--border);border-radius:50%}.dictionary-list>div{border-top:var(--border);padding:var(--space-2) 0}.dictionary-list dt{font-weight:700}.site-map ul{padding-left:1.25rem}.tag-cloud a{display:block;border:var(--border);border-radius:2rem;padding:.35rem .8rem;background:white}.search-page>div{display:flex;gap:var(--space-2)}.notice{background:var(--color-soft);border-left:.3rem solid var(--color-accent);padding:var(--space-3)}
@media(max-width:62rem){.site-header{align-items:flex-start;flex-wrap:wrap}.site-header nav{order:3;flex-basis:100%}.search-shortcut{margin-left:auto}}@media(max-width:38rem){.site-header{display:block}.site-header nav{margin-block:.6rem}.site-header ul{gap:.35rem 1rem}.search-shortcut{grid-template-columns:1fr auto}.search-shortcut label{grid-column:1/-1}.home h1{font-size:clamp(3.5rem,22vw,6rem)}.search-page>div{align-items:stretch;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media print{.site-header,.site-footer,.breadcrumbs,.search-shortcut,.skip-link{display:none!important}body{background:white;color:black}body>main{width:100%;padding:0}a{color:inherit;text-decoration:none}a[href^="http"]::after{content:" (" attr(href) ")";font-size:.8em}.cards article{box-shadow:none}}

/* Identité UBI TURBI — frontispice ancien, déclinée selon le type de page. */
body{
  background-color:var(--color-paper);
  background-image:
    radial-gradient(circle at 14% 10%,#fff9e8aa 0 7rem,transparent 18rem),
    repeating-linear-gradient(94deg,transparent 0 12px,#5b351408 13px 14px),
    linear-gradient(90deg,#8f6b3710,transparent 12%,transparent 88%,#8f6b3710);
}
body::before{content:"";position:fixed;inset:.75rem;z-index:-1;pointer-events:none;border:1px solid #7d21184d;outline:1px solid #7d211826;outline-offset:.3rem}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-header{width:min(88rem,calc(100% - 4rem));min-height:7rem;border-bottom:0;padding-block:1.4rem;position:relative;z-index:2}
.site-name{color:var(--color-accent);font-size:clamp(1.5rem,3vw,2.25rem);letter-spacing:.035em}
.site-header nav a{color:var(--color-accent-dark);font-size:1.08rem;text-decoration-color:#7d211866}
.search-shortcut{grid-template-columns:minmax(9rem,17rem) 3.35rem;gap:0}
.search-shortcut input{height:3.35rem;border-color:#9f715f;background:#f8efdcbb;border-radius:.2rem 0 0 .2rem;padding-inline:1rem;font-family:var(--font-serif)}
.search-shortcut button{height:3.35rem;min-height:0;border-radius:0 .2rem .2rem 0;font-family:var(--font-serif);font-size:2rem;font-weight:400;line-height:1;padding:.2rem .7rem}
.site-footer{border-top:1px solid #7d211838;color:#6f6254;background:#eadabd70}

.page-home{background-image:url("/assets/images/ubi-turbi-frontispiece.png");background-size:cover;background-position:center;background-attachment:fixed}
.page-home .site-footer{display:none}.page-home .site-header{background:transparent}
.home{width:min(88rem,calc(100% - 4rem));min-height:calc(100svh - 7rem);padding:clamp(2rem,4vh,4rem) 2rem clamp(8rem,15vh,12rem);align-items:start}
.home-frontispiece{width:min(58rem,78%);margin-inline:auto;text-shadow:0 1px #fff6df;padding-top:clamp(1rem,4vh,3.5rem)}
.home .eyebrow{max-width:34rem;margin:0 auto clamp(1.5rem,4vh,3rem);color:var(--color-accent);font-size:clamp(1rem,2vw,1.4rem);line-height:1.45;letter-spacing:.055em}
.home h1{margin:.25em 0 .18em;color:#201d18;font-size:clamp(4.3rem,12.5vw,11rem);font-weight:400;line-height:.82;letter-spacing:-.045em;white-space:nowrap}
.home-introduction{max-width:43rem;margin:2rem auto;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.55}
.ornament{display:flex;align-items:center;gap:.8rem;width:min(24rem,70%);margin-inline:auto;color:var(--color-accent)}
.ornament::before,.ornament::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--color-accent))}.ornament::after{background:linear-gradient(90deg,var(--color-accent),transparent)}
.ornament span{font-size:1.4rem}.ornament-bottom{width:min(27rem,75%)}.ornament-bottom span{font-size:2rem}
.home .primary{margin-top:.6rem;min-width:11rem;justify-content:center;border:1px solid #9f3a2f;background:linear-gradient(#8d2a20,#671711);box-shadow:inset 0 1px #fff3,0 .3rem .9rem #4b190b26;font-family:var(--font-serif);font-size:1.2rem;font-weight:400}

body:not(.page-home)>main{position:relative;margin-block:1rem 4rem;padding:clamp(2rem,5vw,4rem);background:#f8efdcce;border:1px solid #a98c6b80;box-shadow:0 .6rem 2rem #4d2c1612}
body:not(.page-home)>main::before{content:"";position:absolute;inset:.55rem;pointer-events:none;border:1px solid #7d211824}
body:not(.page-home) h1{color:var(--color-accent-dark);font-weight:400;letter-spacing:-.025em}
body:not(.page-home) h1::after{content:"";display:block;width:5.5rem;height:1px;margin-top:1rem;background:var(--color-accent)}
.content-type{color:var(--color-accent);font-family:var(--font-serif);letter-spacing:.14em}
.breadcrumbs{border-bottom:1px solid #bca98d80;padding-bottom:1rem}.breadcrumbs a{color:var(--color-muted)}
.lead{color:#5f4d3c}.prose>p:first-child::first-letter{float:left;margin:.04em .12em 0 0;color:var(--color-accent);font-family:var(--font-serif);font-size:3.7em;line-height:.78}
.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}.cards article,.search-results article{height:100%;background:#f7ecd6a8;border:1px solid #a78a68;box-shadow:none;position:relative}.cards article::before{content:"";position:absolute;inset:.32rem;pointer-events:none;border:1px solid #7d21181f}.cards h2,.cards h3{font-weight:400}.cards a{color:var(--color-accent-dark)}
.page-type-portal>main{width:min(82rem,calc(100% - 2rem))}.page-type-portal article>header{text-align:center}.page-type-portal article>header h1::after{margin-inline:auto}.page-type-portal .prose{max-width:60ch;margin-inline:auto;text-align:center}.page-type-portal section>h2{text-align:center;color:var(--color-accent);font-weight:400}
.page-type-article>main{width:min(78ch,calc(100% - 2rem))}.page-type-article article{font-size:1.04em}.page-type-article .prose{font-family:Georgia,"Times New Roman",serif}.page-type-article blockquote{color:#5b4634;background:#eadbbd70;padding:1rem 1.3rem}
.page-type-dictionary>main{width:min(72ch,calc(100% - 2rem))}.page-type-dictionary h1{font-size:clamp(3rem,8vw,6rem)}.page-type-dictionary .prose{font-size:1.15em}.page-type-dictionary .prose>p:first-child::first-letter{font-size:1em;float:none;margin:0;color:inherit}
.dictionary-list>div{border-color:#ad9273}.dictionary-list .letter-heading{margin-top:2rem;border:0}.letter-heading dt{color:var(--color-accent);font-size:2.5rem;font-weight:400}.letter-nav a{border-color:#9f715f;background:#f8efdc;color:var(--color-accent-dark);text-decoration:none}
.tags a,.tag-cloud a{border-color:#aa8e6d;background:#f4e7cd;color:var(--color-accent-dark);text-decoration:none}.dictionary-references{border-top:1px solid #9c7d5b}.dictionary-references h2,.tags h2{color:var(--color-accent);font-weight:400}

@media(max-width:62rem){.site-header{width:min(100% - 2rem,88rem)}.page-home{background-position:60% center}.home-frontispiece{width:min(42rem,90%)}.home h1{font-size:clamp(4rem,14vw,7rem)}}
@media(max-width:38rem){body::before{inset:.35rem}.site-header{padding-top:1.2rem}.site-name{display:block;text-align:center}.site-header nav ul{justify-content:center}.search-shortcut{display:grid}.page-home{background-image:linear-gradient(#efe3cbd6,#efe3cbad),url("/assets/images/ubi-turbi-frontispiece.png");background-position:34% center;background-attachment:scroll}.home{width:100%;padding:2rem 1rem 7rem;min-height:auto}.home-frontispiece{width:100%}.home h1{font-size:clamp(3.3rem,19vw,5rem);white-space:normal}.home .eyebrow{font-size:.95rem}.home-introduction{font-size:1.08rem}body:not(.page-home)>main{width:calc(100% - 1rem);padding:2.2rem 1.25rem;margin-top:.25rem}.prose>p:first-child::first-letter{font-size:3em}.cards{grid-template-columns:1fr}}

.page-dates{width:min(var(--reading),calc(100% - 2rem));margin:-2.6rem auto 2.5rem;padding-top:1rem;border-top:1px solid #8f6d4838;color:var(--color-muted);display:flex;justify-content:space-between;gap:1rem;font-size:.82rem;font-style:italic}
.page-dates p{margin:0}.page-home .page-dates{width:min(50rem,calc(100% - 2rem));margin-top:-6rem;position:relative;text-shadow:0 1px #fff6df}
.latest-blog{margin-top:var(--space-5);padding:clamp(1.5rem,4vw,2.5rem);position:relative;background:#ead6b5a8;border:1px solid #8e2b2170;text-align:left}
.latest-blog::before{content:"";position:absolute;inset:.4rem;border:1px solid #7d211828;pointer-events:none}.latest-blog h2{margin:.2rem 0 .6rem;text-align:left!important}.latest-blog h2 a{color:var(--color-accent-dark)}.latest-blog-date{color:var(--color-muted);font-style:italic}.read-more{display:inline-block;margin-top:.5rem;color:var(--color-accent-dark);font-variant:small-caps;letter-spacing:.06em}
.page-type-blog>main{width:min(76ch,calc(100% - 2rem))}.page-type-blog article>header{padding-bottom:1.5rem;margin-bottom:2rem;border-bottom:1px solid #a7896780}.page-type-blog .blog-publication{color:var(--color-muted);font-size:.9rem;font-style:italic}.page-type-blog .prose{font-size:1.04em}.section-heading{text-align:center}.section-heading h1::after{margin-inline:auto}
.random-page{min-height:52vh;text-align:center}.random-action{margin-top:2.5rem}.random-action .button{min-width:13rem;justify-content:center}.site-header [data-random-page]::before{content:"✦";margin-right:.35rem;font-size:.72em;text-decoration:none}.site-header [data-random-page][aria-busy="true"]{opacity:.65}
.contact-card{display:inline-block;margin-top:1rem;padding:1rem 1.4rem;background:#ead6b5a8;border:1px solid #8e2b2170;font-size:1.25rem;font-family:var(--font-serif)}
@media(max-width:38rem){.page-dates{margin-top:-2rem;display:block}.page-dates p+p{margin-top:.25rem}.page-home .page-dates{margin-top:-4.5rem}.latest-blog{padding:1.4rem}}
