/* CARAVELLI COSTRUZIONI — OBSIDIAN IV · 08.08.2026
   Architecture × sculpture × matière × lumière × temps. */
:root{
  --ob4-obsidian:#050607;
  --ob4-basalt:#0B0D0F;
  --ob4-graphite:#14171A;
  --ob4-ruthenium:#34383C;
  --ob4-carrara:#EEECE6;
  --ob4-mist:#AAA8A2;
  --ob4-ice:#A9C0CA;
  --ob4-palladium:#C5BDAE;
  --ob4-champagne:#B9A477;
  --ob4-border:rgba(238,236,230,.14);
  --ob4-border-strong:rgba(238,236,230,.24);
  --ob4-display:"Bodoni Moda","Bodoni 72","Didot",serif;
  --ob4-ui:"Inter","Neue Haas Grotesk Text Pro","Helvetica Neue",Arial,sans-serif;
  --ob4-mono:"SFMono-Regular","Söhne Mono","Roboto Mono","IBM Plex Mono",ui-monospace,monospace;
  --ob4-safe:clamp(20px,4vw,68px);
}
html.ob4{background:var(--ob4-obsidian);color-scheme:dark;scrollbar-color:var(--ob4-ruthenium) var(--ob4-obsidian)}
html.ob4 body{background:var(--ob4-obsidian)!important;color:var(--ob4-carrara);font-family:var(--ob4-ui);overflow-x:clip}
html.ob4 body::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background-image:url('/assets/grain.png');background-size:220px;opacity:.055;mix-blend-mode:soft-light}
html.ob4 body::after{content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(120% 90% at 50% -15%,rgba(169,192,202,.045),transparent 50%),var(--ob4-obsidian)}
html.ob4 ::selection{background:var(--ob4-palladium);color:var(--ob4-obsidian)}
html.ob4 a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.18em}
html.ob4 :focus-visible{outline:1px solid var(--ob4-ice)!important;outline-offset:5px!important}

/* Global chromatic authority — old blues/golds become mineral neutrals. */
html.ob4 .oc-scrim,html.ob4 #ol-atmosphere,html.ob4 #ol-atmosphere-dubai,html.ob4 #oc-marble{opacity:.18!important;filter:grayscale(1) contrast(1.08)}
html.ob4 .lux-deep,html.ob4 .lux-sec,html.ob4 .sec,html.ob4 .pj-sec,html.ob4 .dxb-sec,html.ob4 .property-section,html.ob4 main{background-color:transparent!important}
html.ob4 .btn,html.ob4 .ncta{border-radius:0!important;box-shadow:none!important;background:transparent!important;border:1px solid var(--ob4-border-strong)!important;color:var(--ob4-carrara)!important;font:500 10px/1 var(--ob4-ui)!important;letter-spacing:.18em!important;text-transform:uppercase;min-height:46px;padding:0 18px!important;display:inline-flex;align-items:center;justify-content:center;gap:12px;transition:border-color .3s ease,color .3s ease,background-color .3s ease!important}
html.ob4 .btn:hover,html.ob4 .btn:focus-visible,html.ob4 .ncta:hover,html.ob4 .ncta:focus-visible{background:rgba(238,236,230,.055)!important;border-color:rgba(238,236,230,.48)!important}
html.ob4 .eyebrow,html.ob4 .kicker,html.ob4 .hero-ey,html.ob4 .dxb-k,html.ob4 .pj-cat,html.ob4 .pj-loc,html.ob4 .cp-place{font-family:var(--ob4-mono)!important;font-size:10px!important;letter-spacing:.17em!important;text-transform:uppercase!important;color:var(--ob4-mist)!important}
html.ob4 .display,html.ob4 .pj-h1,html.ob4 .ph-h1,html.ob4 .legacy-title,html.ob4 .stmt-q{font-family:var(--ob4-display)!important;font-weight:400!important;letter-spacing:-.035em!important;color:var(--ob4-carrara)!important}
html.ob4 .lead,html.ob4 .body,html.ob4 .hero-sub,html.ob4 .ph-sub,html.ob4 .cp-copy{color:rgba(238,236,230,.72)!important;line-height:1.72!important}

/* Header — quieter than the first screen. */
html.ob4 .hd{height:78px!important;background:linear-gradient(180deg,rgba(5,6,7,.86),rgba(5,6,7,.34),transparent)!important;border:0!important;backdrop-filter:none!important;box-shadow:none!important;transition:background-color .35s ease,border-color .35s ease!important}
html.ob4 .hd.is-scrolled,html.ob4 .hd.is-past-hero{background:rgba(5,6,7,.93)!important;border-bottom:1px solid var(--ob4-border)!important;backdrop-filter:blur(14px)!important}
html.ob4 .hd-in{height:78px!important;max-width:none!important;width:100%!important;padding-inline:var(--ob4-safe)!important}
html.ob4 .logo-ic{width:27px!important;height:27px!important;opacity:.82}
html.ob4 .logo-n{font-family:var(--ob4-display)!important;font-size:17px!important;letter-spacing:.11em!important;color:var(--ob4-carrara)!important}
html.ob4 .logo-s{font-family:var(--ob4-mono)!important;font-size:7px!important;letter-spacing:.22em!important;color:var(--ob4-mist)!important}
html.ob4 .nav{gap:clamp(13px,1.55vw,28px)!important}
html.ob4 .nav .nl{font:500 9px/1 var(--ob4-ui)!important;letter-spacing:.18em!important;text-transform:uppercase;color:rgba(238,236,230,.66)!important;padding:12px 0!important}
html.ob4 .nav .nl::after{height:1px!important;background:var(--ob4-carrara)!important;box-shadow:none!important}
html.ob4 .nav .nl:hover,html.ob4 .nav .nl.active{color:var(--ob4-carrara)!important}
html.ob4 .lang-sw{margin-left:8px!important}
html.ob4 .lb{font:500 8px/1 var(--ob4-mono)!important;color:rgba(238,236,230,.48)!important}
html.ob4 .lb.active{color:var(--ob4-carrara)!important}
html.ob4 .ldot{background:var(--ob4-ruthenium)!important}

/* Cursor — 3px instrument; labels only when context adds meaning. */
@media(pointer:fine){
  html.ob4 #cur .cur-ring{width:0!important;height:0!important;border:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important}
  html.ob4 #cur .cur-dot{width:3px!important;height:3px!important;background:var(--ob4-carrara)!important;box-shadow:0 0 0 1px rgba(5,6,7,.28)!important}
  html.ob4 #cur.has-label .cur-ring::after{content:attr(data-label);position:absolute;left:13px;top:-9px;white-space:nowrap;padding:6px 8px;border:1px solid var(--ob4-border);background:rgba(5,6,7,.84);font:500 8px/1 var(--ob4-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ob4-carrara)}
}

/* OBSIDIAN IV HOME */
.ob4-home{position:relative;isolation:isolate}
.ob4-hero{position:relative;min-height:118svh;background:var(--ob4-obsidian);overflow:clip;border-bottom:1px solid var(--ob4-border)}
.ob4-hero-sticky{position:sticky;top:0;height:calc(100svh - 78px);min-height:602px;overflow:hidden}
.ob4-monolith-stage{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
#ob4-monolith{width:100%;height:100%;display:block;opacity:0;transition:opacity .7s ease}
html[data-ob4-renderer="webgl2"] #ob4-monolith{opacity:1}
.ob4-monolith-fallback{position:absolute;width:min(32vw,420px);aspect-ratio:.57;background:linear-gradient(106deg,#07090a 0 18%,#14171a 18% 42%,#0b0d0f 42% 68%,#202428 68% 71%,#090b0c 71%);clip-path:polygon(18% 2%,74% 0,96% 22%,87% 54%,99% 79%,62% 100%,8% 91%,0 31%);box-shadow:0 48px 110px rgba(0,0,0,.62),inset -22px 0 42px rgba(169,192,202,.035);opacity:.82}
.ob4-monolith-fallback::after{content:"";position:absolute;left:49%;top:12%;width:1px;height:68%;background:linear-gradient(180deg,transparent,var(--ob4-champagne),transparent);opacity:.42;transform:rotate(-4deg)}
html[data-ob4-renderer="webgl2"] .ob4-monolith-fallback{opacity:0}
.ob4-hero-copy{position:absolute;inset:0;box-sizing:border-box;z-index:2;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);grid-template-rows:1fr auto;align-items:end;padding:124px var(--ob4-safe) clamp(48px,7vh,82px);pointer-events:none}
.ob4-hero-copy>*{pointer-events:auto}
.ob4-hero-kicker{grid-column:1;align-self:start;margin-top:9vh;font:500 10px/1.5 var(--ob4-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ob4-mist)}
.ob4-hero-title{grid-column:1;align-self:end;margin:0;max-width:9.4ch;font:400 clamp(82px,10.9vw,172px)/.84 var(--ob4-display);letter-spacing:-.052em;color:var(--ob4-carrara);text-wrap:balance}
.ob4-hero-title em{display:block;font-style:italic;font-weight:400;color:rgba(238,236,230,.76)}
.ob4-hero-side{grid-column:2;grid-row:2;justify-self:end;width:min(420px,100%);padding-bottom:8px}
.ob4-hero-side p{margin:0 0 28px;font:400 clamp(15px,1.18vw,18px)/1.65 var(--ob4-ui);color:rgba(238,236,230,.66)}
.ob4-hero-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:15px;border-top:1px solid var(--ob4-border);font:500 9px/1.3 var(--ob4-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ob4-mist)}
.ob4-sound{appearance:none;border:0;background:transparent;color:var(--ob4-mist);font:500 9px/1 var(--ob4-mono);letter-spacing:.15em;padding:9px 0;cursor:pointer;text-transform:uppercase}
.ob4-sound[aria-pressed="true"]{color:var(--ob4-carrara)}
.ob4-scroll-cue{position:absolute;left:var(--ob4-safe);bottom:24px;z-index:4;font:500 8px/1 var(--ob4-mono);letter-spacing:.18em;text-transform:uppercase;color:rgba(238,236,230,.42);writing-mode:vertical-rl;transform:rotate(180deg)}

.ob4-chapter{position:relative;padding:clamp(100px,15vw,220px) var(--ob4-safe);border-bottom:1px solid var(--ob4-border)}
.ob4-chapter--quiet{min-height:74svh;display:grid;align-items:center}
.ob4-index{display:block;margin-bottom:24px;font:500 10px/1 var(--ob4-mono);letter-spacing:.18em;color:var(--ob4-mist)}
.ob4-manifesto{max-width:1180px;margin:0;font:400 clamp(56px,7.7vw,120px)/.94 var(--ob4-display);letter-spacing:-.045em;color:var(--ob4-carrara)}
.ob4-manifesto em{font-weight:400;color:rgba(238,236,230,.52)}

.ob4-memory{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:clamp(34px,6vw,100px);align-items:center;padding-top:clamp(72px,10vw,160px);padding-bottom:clamp(72px,10vw,160px)}
.ob4-memory-media{position:relative;min-height:min(72vw,820px);overflow:hidden;background:var(--ob4-basalt)}
.ob4-memory-media img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;filter:saturate(.48) contrast(1.08) brightness(.62)!important;transform:scale(1.01)}
.ob4-memory-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 56%,rgba(5,6,7,.66));pointer-events:none}
.ob4-memory-copy{max-width:560px}
.ob4-memory-date{margin:0 0 24px;font:500 11px/1 var(--ob4-mono);letter-spacing:.2em;color:var(--ob4-ice)}
.ob4-memory-title{margin:0 0 30px;font:400 clamp(58px,6.4vw,98px)/.9 var(--ob4-display);letter-spacing:-.045em;color:var(--ob4-carrara)}
.ob4-memory-copy p:not(.ob4-memory-date){font:400 16px/1.75 var(--ob4-ui);color:rgba(238,236,230,.65)}
.ob4-text-link{display:inline-flex;margin-top:28px;padding-bottom:7px;border-bottom:1px solid var(--ob4-border-strong);font:500 9px/1 var(--ob4-mono);letter-spacing:.17em;text-transform:uppercase;color:var(--ob4-carrara);text-decoration:none!important}

.ob4-materials{padding-inline:var(--ob4-safe)}
.ob4-materials-head{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:72px}
.ob4-materials h2{margin:0;font:400 clamp(68px,8.2vw,132px)/.86 var(--ob4-display);letter-spacing:-.05em}
.ob4-materials-head p{max-width:420px;margin:0;color:rgba(238,236,230,.58);line-height:1.65}
.ob4-material-list{border-top:1px solid var(--ob4-border)}
.ob4-material{display:grid;grid-template-columns:74px 1fr auto;align-items:center;gap:18px;min-height:92px;border-bottom:1px solid var(--ob4-border);cursor:default;transition:background-color .3s ease,padding .3s ease}
.ob4-material:hover,.ob4-material:focus-within{background:rgba(238,236,230,.024);padding-inline:12px}
.ob4-material b{font:500 10px/1 var(--ob4-mono);letter-spacing:.16em;color:var(--ob4-mist)}
.ob4-material strong{font:400 clamp(30px,3.4vw,54px)/1 var(--ob4-display);letter-spacing:-.025em;font-weight:400}
.ob4-material small{font:500 9px/1 var(--ob4-mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(238,236,230,.42)}

.ob4-projects{padding-inline:var(--ob4-safe)}
.ob4-section-head{display:grid;grid-template-columns:1fr minmax(250px,.48fr);gap:50px;align-items:end;margin-bottom:70px}
.ob4-section-head h2{margin:0;font:400 clamp(70px,8.8vw,140px)/.84 var(--ob4-display);letter-spacing:-.052em}
.ob4-section-head p{margin:0 0 5px;font:400 15px/1.7 var(--ob4-ui);color:rgba(238,236,230,.58)}
.ob4-project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(14px,2vw,30px);align-items:start}
.ob4-project-card{grid-column:span 7;text-decoration:none!important}
.ob4-project-card:nth-child(2){grid-column:6/span 7;margin-top:14vw}
.ob4-project-card:nth-child(3){grid-column:span 6;margin-top:2vw}
.ob4-project-card figure{margin:0;overflow:hidden;background:var(--ob4-basalt);aspect-ratio:16/10}
.ob4-project-card:nth-child(2) figure{aspect-ratio:4/5}
.ob4-project-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.52) contrast(1.06) brightness(.74)!important;transition:transform .9s cubic-bezier(.2,.7,.1,1),filter .6s ease!important}
.ob4-project-card:hover img{transform:scale(1.018);filter:saturate(.66) contrast(1.04) brightness(.84)!important}
.ob4-project-card figcaption{display:grid;grid-template-columns:1fr auto;gap:20px;padding-top:15px;border-top:1px solid var(--ob4-border)}
.ob4-project-card strong{font:400 30px/1.1 var(--ob4-display);font-weight:400}
.ob4-project-card span{font:500 9px/1.4 var(--ob4-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--ob4-mist)}

.ob4-heritage{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:clamp(40px,7vw,110px);align-items:center}
.ob4-heritage-media{min-height:74svh;position:relative;overflow:hidden;background:var(--ob4-basalt)}
.ob4-heritage-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.25) saturate(.48) contrast(1.1) brightness(.66)!important}
.ob4-heritage-copy h2{margin:0 0 30px;font:400 clamp(66px,7.4vw,116px)/.88 var(--ob4-display);letter-spacing:-.05em}
.ob4-heritage-copy p{max-width:600px;font:400 16px/1.75 var(--ob4-ui);color:rgba(238,236,230,.64)}
.ob4-heritage-stamp{margin-bottom:24px;font:500 10px/1 var(--ob4-mono);letter-spacing:.18em;color:var(--ob4-ice)}

.ob4-foundation{min-height:70svh;display:grid;grid-template-columns:1fr minmax(320px,.7fr);align-items:end;gap:50px;background:var(--ob4-basalt)!important}
.ob4-foundation h2{max-width:7ch;margin:0;font:400 clamp(76px,9.4vw,150px)/.82 var(--ob4-display);letter-spacing:-.055em}
.ob4-foundation-copy{max-width:540px;padding-bottom:10px}
.ob4-foundation-copy p{font:400 16px/1.75 var(--ob4-ui);color:rgba(238,236,230,.64)}
.ob4-contact{min-height:72svh;display:flex;flex-direction:column;justify-content:space-between;gap:80px}
.ob4-contact h2{max-width:10ch;margin:0;font:400 clamp(76px,10.6vw,164px)/.82 var(--ob4-display);letter-spacing:-.055em}
.ob4-contact-bottom{display:flex;align-items:end;justify-content:space-between;gap:30px;padding-top:25px;border-top:1px solid var(--ob4-border)}
.ob4-contact-bottom p{max-width:530px;margin:0;color:rgba(238,236,230,.58);line-height:1.7}

/* Memorial page */
.ob4-memorial{background:var(--ob4-obsidian);min-height:100vh}
.ob4-event-hero{position:relative;min-height:100svh;display:grid;align-items:end;padding:130px var(--ob4-safe) 64px;overflow:hidden;border-bottom:1px solid var(--ob4-border)}
.ob4-event-hero-media{position:absolute;inset:0;z-index:0}
.ob4-event-hero-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.42) contrast(1.12) brightness(.42)!important}
.ob4-event-hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,6,7,.96) 0%,rgba(5,6,7,.72) 42%,rgba(5,6,7,.3) 78%),linear-gradient(0deg,rgba(5,6,7,.82),transparent 48%)}
.ob4-event-hero-copy{position:relative;z-index:1;max-width:1140px}
.ob4-event-date{font:500 11px/1 var(--ob4-mono);letter-spacing:.22em;color:var(--ob4-ice);text-transform:uppercase}
.ob4-event-hero h1{margin:26px 0 26px;max-width:9ch;font:400 clamp(92px,12vw,190px)/.82 var(--ob4-display);letter-spacing:-.058em}
.ob4-event-hero h1 em{font-style:italic;color:rgba(238,236,230,.62)}
.ob4-event-lead{max-width:610px;margin:0;font:400 17px/1.72 var(--ob4-ui);color:rgba(238,236,230,.68)}
.ob4-event-chapter{padding:clamp(96px,12vw,180px) var(--ob4-safe);border-bottom:1px solid var(--ob4-border)}
.ob4-event-chapter-head{display:grid;grid-template-columns:100px 1fr minmax(260px,.45fr);gap:35px;align-items:start;margin-bottom:70px}
.ob4-event-chapter-head .num{font:500 10px/1 var(--ob4-mono);letter-spacing:.18em;color:var(--ob4-mist)}
.ob4-event-chapter-head h2{margin:0;font:400 clamp(64px,8vw,128px)/.85 var(--ob4-display);letter-spacing:-.05em}
.ob4-event-chapter-head p{margin:8px 0 0;font:400 15px/1.72 var(--ob4-ui);color:rgba(238,236,230,.58)}
.ob4-event-mosaic{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(12px,2vw,28px);align-items:start}
.ob4-event-mosaic figure{margin:0;position:relative;overflow:hidden;background:var(--ob4-basalt)}
.ob4-event-mosaic figure:nth-child(1){grid-column:span 8;aspect-ratio:16/10}
.ob4-event-mosaic figure:nth-child(2){grid-column:9/span 4;aspect-ratio:4/5;margin-top:12vw}
.ob4-event-mosaic figure:nth-child(3){grid-column:2/span 5;aspect-ratio:1/1;margin-top:2vw}
.ob4-event-mosaic figure:nth-child(4){grid-column:8/span 5;aspect-ratio:16/11;margin-top:10vw}
.ob4-event-mosaic img{width:100%;height:100%;object-fit:cover;filter:saturate(.58) contrast(1.06) brightness(.76)!important}
.ob4-thanks{min-height:100svh;padding:18vh var(--ob4-safe) 12vh;display:flex;flex-direction:column;justify-content:center;background:#050607!important}
.ob4-thanks-inner{max-width:980px;margin:0 auto}
.ob4-thanks-kicker{margin:0 0 clamp(60px,9vw,120px);font:500 10px/1 var(--ob4-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ob4-mist)}
.ob4-thanks h2{margin:0 0 50px;font:400 clamp(72px,8.7vw,132px)/.86 var(--ob4-display);letter-spacing:-.05em}
.ob4-thanks-copy{max-width:760px;margin-left:auto}
.ob4-thanks-copy p{margin:0 0 1.45em;font:400 clamp(16px,1.45vw,20px)/1.76 var(--ob4-ui);color:rgba(238,236,230,.72)}
.ob4-grazie{padding:22vh var(--ob4-safe);min-height:78svh;display:grid;place-items:center;text-align:center}
.ob4-grazie p{margin:0}
.ob4-grazie .big{font:400 clamp(100px,16vw,240px)/.76 var(--ob4-display);letter-spacing:-.06em}
.ob4-grazie .small{margin-top:32px;font:500 10px/1.6 var(--ob4-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ob4-mist)}

/* Archives page */
.ob4-archives{padding-top:120px;background:var(--ob4-obsidian);min-height:100vh}
.ob4-archives-hero{padding:clamp(80px,10vw,150px) var(--ob4-safe) clamp(70px,9vw,130px);border-bottom:1px solid var(--ob4-border)}
.ob4-archives-hero h1{margin:24px 0 0;font:400 clamp(94px,12.5vw,194px)/.8 var(--ob4-display);letter-spacing:-.06em}
.ob4-archives-grid{padding:clamp(80px,10vw,150px) var(--ob4-safe);display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(18px,2.4vw,36px);align-items:start}
.ob4-archive-card{grid-column:span 7;margin:0}
.ob4-archive-card:nth-child(even){grid-column:6/span 7;margin-top:12vw}
.ob4-archive-card img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:grayscale(.36) sepia(.08) contrast(1.08) brightness(.76)!important}
.ob4-archive-card figcaption{display:flex;justify-content:space-between;gap:20px;padding-top:13px;border-top:1px solid var(--ob4-border);font:500 9px/1.5 var(--ob4-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--ob4-mist)}

/* Existing project / content pages inherit a single House. */
html.ob4 :is(.ph,.pj-hero,.dxb-hero,.pensee-hero,.cp-page-hero,.property-hero){background:var(--ob4-basalt)!important;border-bottom:1px solid var(--ob4-border)!important}
html.ob4 :is(.ph-bg img,.ph-full-bg img,.dxb-hero-bg img,.pj-hero img,.property-hero img){filter:saturate(.48) contrast(1.08) brightness(.58)!important}
html.ob4 :is(.proj-iw,.fig,.dxb-ph,.sc-live-fig,.cp-media,.property-card-media){border-radius:0!important;background:var(--ob4-basalt)!important;box-shadow:none!important}
html.ob4 :is(.proj-iw img,.fig img,.dxb-ph img,.sc-live-fig img,.property-card-media img){filter:saturate(.54) contrast(1.07) brightness(.72)!important}
html.ob4 :is(.sf-item,.dxb-fact,.est-res,.est-opt,.property-card,.cvb-card){border-radius:0!important;border-color:var(--ob4-border)!important;background:transparent!important;box-shadow:none!important}
html.ob4 .ft{position:relative;background:#050607!important;border-top:1px solid var(--ob4-border)!important;color:var(--ob4-carrara)!important;padding-top:clamp(56px,6vw,92px)!important}
html.ob4 .ft::before{content:none!important;display:none!important}
html.ob4 .ft-top,html.ob4 .ft-bot{max-width:none!important;width:100%!important;padding-inline:var(--ob4-safe)!important}
html.ob4 .ft-nav{display:flex!important;flex-wrap:wrap;gap:14px 28px!important}
html.ob4 .ft-nav a{font:500 9px/1.4 var(--ob4-ui)!important;letter-spacing:.15em!important;text-transform:uppercase;color:rgba(238,236,230,.58)!important}
html.ob4 .ft-tag{font-family:var(--ob4-mono)!important;color:var(--ob4-mist)!important}
html.ob4 .ft-sep{background:var(--ob4-border)!important}
html.ob4 .ft-cp,html.ob4 .ft-indep,html.ob4 .ft-legal{font-family:var(--ob4-mono)!important;color:rgba(238,236,230,.46)!important}

/* One concierge, closed by default, never fighting the hero. */
html.ob4 #aiw{z-index:3000!important}
html.ob4 #aiw .ai-pn{background:rgba(11,13,15,.96)!important;border:1px solid var(--ob4-border)!important;box-shadow:0 28px 80px rgba(0,0,0,.44)!important}
html.ob4 #aiw .ai-tr{width:38px!important;height:38px!important;right:18px!important;bottom:18px!important;border:1px solid var(--ob4-border-strong)!important;background:rgba(5,6,7,.88)!important;box-shadow:none!important}
html.ob4 #aiw .ai-tr-ic{font-family:var(--ob4-display)!important;color:var(--ob4-carrara)!important}

/* Proprietary transition layer: a mineral cut, not a generic fade. */
.ob4-page-cut{position:fixed;inset:0;z-index:30000;pointer-events:none;background:var(--ob4-carrara);clip-path:polygon(0 49.7%,100% 49.7%,100% 50.3%,0 50.3%);transform:scaleY(0);transform-origin:center;opacity:0}
.ob4-page-cut.is-cutting{animation:ob4-cut .98s cubic-bezier(.72,0,.18,1) both}
@keyframes ob4-cut{0%{opacity:0;transform:scaleY(0)}20%{opacity:.9;transform:scaleY(1)}48%{opacity:1;clip-path:polygon(0 49.7%,100% 49.7%,100% 50.3%,0 50.3%)}72%{opacity:1;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}100%{opacity:1;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}}
.ob4-light-reveal{opacity:.22;filter:brightness(.58);transition:opacity 1s cubic-bezier(.2,.74,.18,1),filter 1.1s cubic-bezier(.2,.74,.18,1)}
.ob4-light-reveal.is-revealed{opacity:1;filter:brightness(1)}

/* STONE MEMORY — chapters retain a single mineral spatial field. */
html.ob4-stone-memory main{isolation:isolate}
html.ob4-stone-memory main::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(80% 66% at 50% 42%,rgba(169,192,202,.028),transparent 62%);opacity:.9}

/* MINERAL DISSOLVE — intentionally rare, 420 ms. */
.ob4-mineral-dissolve{position:relative;clip-path:inset(0 0 100% 0);filter:contrast(1.12) brightness(.62);opacity:.28;transition:clip-path .42s cubic-bezier(.52,.02,.18,1),filter .42s ease,opacity .32s ease}
.ob4-mineral-dissolve::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:url('/assets/grain.png');background-size:190px;mix-blend-mode:screen;opacity:.18;transition:opacity .42s ease}
.ob4-mineral-dissolve.is-revealed{clip-path:inset(0);filter:none;opacity:1}
.ob4-mineral-dissolve.is-revealed::after{opacity:0}

/* SCULPTURAL MASK — mineral geometry resolves into the final frame. */
.ob4-sculptural-mask{clip-path:polygon(11% 3%,88% 0,100% 18%,96% 84%,78% 100%,4% 93%,0 22%);transform:scale(.985);filter:brightness(.66) saturate(.52);transition:clip-path .96s cubic-bezier(.18,.72,.12,1),transform .96s cubic-bezier(.18,.72,.12,1),filter .8s ease}
.ob4-sculptural-mask.is-revealed{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transform:none;filter:none}

/* OBSIDIAN IV owns its narrative surfaces. Legacy paper rules carry higher selector specificity. */
html.ob4 body[data-page] main > .ob4-hero,
html.ob4 body[data-page] main > .ob4-chapter,
html.ob4 body[data-page] main > .ob4-event-hero,
html.ob4 body[data-page] main > .ob4-event-chapter,
html.ob4 body[data-page] main > .ob4-thanks,
html.ob4 body[data-page] main > .ob4-grazie,
html.ob4 body[data-page] main > .ob4-archives-hero,
html.ob4 body[data-page] main > .ob4-archives-grid {
  background-color:var(--ob4-obsidian)!important;
  color:var(--ob4-carrara)!important;
}
html.ob4 body[data-page] main > .ob4-chapter:nth-of-type(even),
html.ob4 body[data-page] main > .ob4-event-chapter:nth-of-type(even){background-color:var(--ob4-basalt)!important}
html.ob4 body[data-page] main > .ob4-hero{background:var(--ob4-obsidian)!important}
html.ob4 body[data-page] main > .ob4-event-hero{background:var(--ob4-obsidian)!important}
html.ob4 body[data-page] main > .ob4-thanks{background:var(--ob4-obsidian)!important}
html.ob4 body[data-page] main > .ob4-grazie{background:var(--ob4-basalt)!important}

@media(max-width:1100px){
  html.ob4 .nav{gap:14px!important}
  html.ob4 .nav .nl{font-size:8px!important;letter-spacing:.13em!important}
  .ob4-hero-copy{grid-template-columns:1fr .56fr}
}
@media(max-width:900px){
  html.ob4 .hd-in{padding-inline:22px!important}
  html.ob4 .nav{background:rgba(5,6,7,.985)!important;padding:118px 26px 44px!important;gap:5px!important}
  html.ob4 body.nopen .nav{display:flex!important}
  html.ob4 .nav .nl{font:400 34px/1.05 var(--ob4-display)!important;letter-spacing:-.02em!important;text-transform:none!important;padding:10px 0!important}
  html.ob4 .lang-sw{margin:28px 0 0!important}
  .ob4-hero{min-height:112svh}.ob4-hero-sticky{min-height:620px}
  .ob4-hero-copy{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;align-items:end;padding:110px 22px 62px}
  .ob4-hero-kicker{grid-column:1;grid-row:1;margin-top:2vh}
  .ob4-hero-title{grid-column:1;grid-row:2;align-self:end;font-size:clamp(64px,17.5vw,96px);max-width:8ch;margin-bottom:18px}
  .ob4-hero-side{grid-column:1;grid-row:3;justify-self:start;max-width:470px}
  .ob4-monolith-stage{inset:4% -24% 8% 14%;opacity:.82}
  .ob4-monolith-fallback{width:min(62vw,390px)}
  .ob4-scroll-cue{display:none}
  .ob4-chapter{padding:100px 22px}
  .ob4-memory{grid-template-columns:1fr;gap:54px}.ob4-memory-media{min-height:72svh}.ob4-memory-copy{padding-inline:0}
  .ob4-materials-head,.ob4-section-head{grid-template-columns:1fr;display:grid;gap:28px}
  .ob4-project-card,.ob4-project-card:nth-child(2),.ob4-project-card:nth-child(3){grid-column:1/-1;margin-top:0}.ob4-project-card:nth-child(2){width:78%;margin-left:auto}.ob4-project-card:nth-child(2) figure{aspect-ratio:4/5}
  .ob4-heritage{grid-template-columns:1fr}.ob4-heritage-media{min-height:68svh}.ob4-foundation{grid-template-columns:1fr;align-items:start}.ob4-contact-bottom{align-items:flex-start;flex-direction:column}
  .ob4-event-hero{padding:118px 22px 48px}.ob4-event-chapter,.ob4-thanks,.ob4-grazie{padding-left:22px;padding-right:22px}.ob4-event-chapter-head{grid-template-columns:55px 1fr;gap:20px}.ob4-event-chapter-head p{grid-column:2}.ob4-event-mosaic figure:nth-child(1){grid-column:1/-1}.ob4-event-mosaic figure:nth-child(2){grid-column:5/-1;margin-top:0}.ob4-event-mosaic figure:nth-child(3){grid-column:1/8}.ob4-event-mosaic figure:nth-child(4){grid-column:3/-1;margin-top:0}
  .ob4-archives{padding-top:90px}.ob4-archives-hero,.ob4-archives-grid{padding-left:22px;padding-right:22px}.ob4-archive-card,.ob4-archive-card:nth-child(even){grid-column:1/-1;margin-top:0}.ob4-archive-card:nth-child(even){width:82%;margin-left:auto}
  html.ob4 .ft::before{padding-inline:22px}html.ob4 .ft-top,html.ob4 .ft-bot{padding-inline:22px!important}
}
@media(max-width:560px){
  .ob4-hero-copy{padding-top:92px}.ob4-hero-title{font-size:clamp(60px,16.8vw,82px)}.ob4-hero-side p{font-size:14px;line-height:1.62}.ob4-hero-meta{font-size:8px}
  .ob4-manifesto{font-size:clamp(52px,14.5vw,74px)}
  .ob4-memory-title{font-size:clamp(54px,15vw,76px)}.ob4-memory-media{min-height:62svh}
  .ob4-materials h2,.ob4-section-head h2,.ob4-heritage-copy h2,.ob4-foundation h2,.ob4-contact h2{font-size:clamp(58px,16vw,84px)}
  .ob4-material{grid-template-columns:48px 1fr}.ob4-material small{display:none}.ob4-material strong{font-size:32px}
  .ob4-event-hero h1{font-size:clamp(76px,21vw,112px)}.ob4-event-chapter-head h2{font-size:clamp(58px,16vw,82px)}.ob4-event-chapter-head{grid-template-columns:1fr}.ob4-event-chapter-head p{grid-column:1}.ob4-event-mosaic{gap:10px}.ob4-event-mosaic figure:nth-child(2){grid-column:4/-1}.ob4-event-mosaic figure:nth-child(3){grid-column:1/9}.ob4-event-mosaic figure:nth-child(4){grid-column:2/-1}.ob4-thanks h2{font-size:clamp(62px,17vw,88px)}.ob4-grazie .big{font-size:clamp(88px,27vw,134px)}
}

/* True reduced-motion composition: static, complete, still premium. */
@media(prefers-reduced-motion:reduce){
  html.ob4{scroll-behavior:auto!important}
  html.ob4 *,html.ob4 *::before,html.ob4 *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
  .ob4-light-reveal,.ob4-mineral-dissolve,.ob4-sculptural-mask{opacity:1!important;filter:none!important;clip-path:none!important;transform:none!important}
  .ob4-mineral-dissolve::after{display:none!important}
  .ob4-page-cut{display:none!important}
  .ob4-monolith-fallback{opacity:.92!important}
  #ob4-monolith{opacity:.5!important}
}
@media(forced-colors:active){
  html.ob4 body{background:Canvas!important;color:CanvasText!important}
  .ob4-monolith-stage{display:none}.ob4-material,.ob4-chapter,.ob4-event-chapter{border-color:CanvasText!important}
}
@media print{
  html.ob4 body{background:#fff!important;color:#111!important}.ob4-monolith-stage,#cur,#pb,#aiw,.ob4-sound{display:none!important}.ob4-chapter,.ob4-event-chapter{break-inside:avoid;border-color:#bbb}.ob4-memory-media img,.ob4-event-mosaic img{filter:none!important}
}


/* ==========================================================================
   OBSIDIAN IV — FINAL AUTHORITY · 08.08.2026
   Purge des contradictions de l'ancien habillage sans supprimer les fonctions.
   ========================================================================== */
html.ob4{
  --c-encre:var(--ob4-carrara);
  --c-blanc:var(--ob4-obsidian);
  --c-steel:var(--ob4-mist);
  --c-bronze:var(--ob4-champagne);
  --c-or:var(--ob4-palladium);
  --ol-night:var(--ob4-obsidian);
  --ol-abime:var(--ob4-basalt);
  --ol-carrara:var(--ob4-carrara);
  --ol-satin:var(--ob4-carrara);
  --ol-platinum:var(--ob4-palladium);
  --ol-silver:var(--ob4-mist);
  --ol-velvet:rgba(238,236,230,.66);
  --ol-bronze:var(--ob4-champagne);
  --ol-bronze-soft:var(--ob4-palladium);
}

/* Toute surface "papier" héritée rejoint désormais la profondeur minérale. */
html.ob4 :is(.sec--blanc,.sec--creme,.sec--lin,.pensee-body,.pj-sec,.dxb-sec,.property-section,.legacy-section){
  background:var(--ob4-basalt)!important;
  color:var(--ob4-carrara)!important;
}
html.ob4 :is(.sec--blanc,.sec--creme,.sec--lin,.pensee-body,.pj-sec,.dxb-sec)
:is(h1,h2,h3,h4,.display,.h2,.pj-sec-t,.stmt-q,.dbloc-v,.fig-v,.sf-t){
  color:var(--ob4-carrara)!important;
  text-shadow:none!important;
}
html.ob4 :is(.sec--blanc,.sec--creme,.sec--lin,.pensee-body,.pj-sec,.dxb-sec)
:is(p,li,.body,.lead,.pj-loc,.dbloc-i,.form-note){
  color:rgba(238,236,230,.72)!important;
}
html.ob4 :is(.dbloc,.sf-item,.int-block,.est,.regards-item,.fig,.est-res,.est-opt,.pj-card,.property-card){
  background:var(--ob4-graphite)!important;
  border-color:var(--ob4-border)!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
html.ob4 :is(.dbloc-l,.sf-n,.eyebrow,.kicker,.pj-sec-n,.fig-l){
  color:var(--ob4-mist)!important;
}

/* Les anciennes révélations verticales sont neutralisées.
   Les signatures OBSIDIAN IV restent les seules animations de révélation. */
html.ob4 :is(.rv,.ol-reveal,.sf-item,.fig,.dbloc,.sc-photo,.proj-iw,.dxb-ph,.folco-portrait){
  opacity:1!important;
  transform:none!important;
  filter:none;
  transition:none!important;
}
html.ob4.js :is(.rv,.ol-reveal,.sf-item,.fig,.dbloc,.sc-photo,.proj-iw,.dxb-ph,.folco-portrait):not(.in){
  opacity:1!important;
  transform:none!important;
  filter:none!important;
}

/* Consentement : information discrète, jamais un deuxième hero. */
html.ob4 body[data-page] .hc-consent,
html.ob4 .hc-consent--branch{
  left:auto!important;
  right:max(18px,env(safe-area-inset-right))!important;
  bottom:max(18px,env(safe-area-inset-bottom))!important;
  width:min(500px,calc(100vw - 36px))!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  align-items:start!important;
  gap:9px!important;
  padding:15px 16px!important;
  border:1px solid var(--ob4-border-strong)!important;
  background:rgba(5,6,7,.94)!important;
  color:var(--ob4-carrara)!important;
  box-shadow:0 18px 60px rgba(0,0,0,.42)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  backdrop-filter:blur(18px)!important;
  border-radius:0!important;
}
html.ob4 body[data-page] .hc-consent::before,
html.ob4 .hc-consent--branch::before{display:none!important}
html.ob4 :is(body[data-page] .hc-consent__titre,.hc-consent--branch .hc-consent__titre){
  margin:0!important;
  font:500 8px/1.25 var(--ob4-mono)!important;
  letter-spacing:.20em!important;
  color:var(--ob4-palladium)!important;
}
html.ob4 :is(body[data-page] .hc-consent__texte,.hc-consent--branch .hc-consent__texte){
  margin:0!important;
  font:400 11px/1.5 var(--ob4-ui)!important;
  color:rgba(238,236,230,.68)!important;
}
html.ob4 :is(body[data-page] .hc-consent__texte,.hc-consent--branch .hc-consent__texte) a{
  color:var(--ob4-carrara)!important;
  text-decoration-color:rgba(238,236,230,.35)!important;
}
html.ob4 :is(body[data-page] .hc-consent__actions,.hc-consent--branch .hc-consent__actions){
  display:flex!important;
  flex-direction:row!important;
  justify-content:flex-start!important;
  gap:8px!important;
  margin:2px 0 0!important;
}
html.ob4 :is(body[data-page] .hc-consent__btn,.hc-consent--branch .hc-consent__btn){
  width:auto!important;
  min-height:32px!important;
  height:32px!important;
  padding:0 12px!important;
  border-radius:0!important;
  font:500 8px/1 var(--ob4-ui)!important;
  letter-spacing:.14em!important;
  color:var(--ob4-carrara)!important;
  background:transparent!important;
  border:1px solid var(--ob4-border-strong)!important;
  box-shadow:none!important;
  transform:none!important;
}
html.ob4 :is(body[data-page] .hc-consent__btn--oui,.hc-consent--branch .hc-consent__btn--oui){
  background:var(--ob4-carrara)!important;
  color:var(--ob4-obsidian)!important;
  border-color:var(--ob4-carrara)!important;
}
html.ob4 body.nopen :is(.hc-consent,.hc-consent--branch){
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* Le panneau n’empiète jamais sur le récit du Hero : l’espace n’est réservé
   que pendant son affichage effectif. */
@media(min-width:901px){
  html.ob4 body.hc-consent-open .ob4-hero-side{padding-bottom:168px}
}

/* Navigation mobile : plein écran réellement opaque et hiérarchie lisible. */
@media(max-width:900px){
  html.ob4 .hd{z-index:12020!important}
  html.ob4 .nav{
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    background:var(--ob4-obsidian)!important;
    border:0!important;
    z-index:12000!important;
    padding:108px 26px max(34px,env(safe-area-inset-bottom))!important;
    justify-content:center!important;
    overflow:auto!important;
  }
  html.ob4 body.nopen .nav{opacity:1!important;visibility:visible!important;transform:none!important}
  html.ob4 .nav .nl{
    color:rgba(238,236,230,.82)!important;
    font-size:clamp(30px,9.5vw,46px)!important;
    line-height:1!important;
  }
  html.ob4 .nav .nl:hover,
  html.ob4 .nav .nl:focus-visible{color:var(--ob4-carrara)!important}
  html.ob4 .lang-sw{margin-top:22px!important}
  html.ob4 body.nopen{overflow:hidden!important}
}
@media(max-width:560px){
  html.ob4 body[data-page] .hc-consent,
  html.ob4 .hc-consent--branch{
    left:max(12px,env(safe-area-inset-left))!important;
    right:max(12px,env(safe-area-inset-right))!important;
    bottom:max(12px,env(safe-area-inset-bottom))!important;
    width:auto!important;
    max-height:34svh!important;
    overflow:auto!important;
    padding:13px 14px!important;
    gap:8px!important;
  }
  html.ob4 :is(body[data-page] .hc-consent__texte,.hc-consent--branch .hc-consent__texte){
    font-size:10.5px!important;
    line-height:1.42!important;
  }
  html.ob4 :is(body[data-page] .hc-consent__actions,.hc-consent--branch .hc-consent__actions){
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
  }
  html.ob4 :is(body[data-page] .hc-consent__btn,.hc-consent--branch .hc-consent__btn){
    width:100%!important;
    min-width:0!important;
    padding-inline:8px!important;
    white-space:normal!important;
  }
  .ob4-hero-sticky{min-height:482px}
  .ob4-hero-copy{padding-bottom:42px}
  html.ob4 body.hc-consent-open .ob4-hero-side{padding-bottom:clamp(172px,22svh,198px)}
  .ob4-monolith-stage{inset:8% -40% 11% 8%}
}

/* Luxury Branch : la branche conserve ses fonctions mais rejoint la Maison
   par les noirs minéraux, l'albâtre et les micro-accents métalliques. */
html.ob4 :is(.topbar,.site-header,.mobile-menu,.site-footer,.bien-footer){
  background-color:var(--ob4-obsidian)!important;
  color:var(--ob4-carrara)!important;
}
html.ob4 :is(.brand-main,.brand-sub,.brand-branch,.bien-title,.bien-price,.destination-copy h3){
  color:var(--ob4-carrara)!important;
}
html.ob4 :is(.bien-page,.bien-desc,.bien-specs,.destinations,.philosophy,.private-office){
  background-color:var(--ob4-basalt)!important;
  color:var(--ob4-carrara)!important;
}
html.ob4 :is(.bien-loc,.bien-src,.bien-nosend,.destination-copy p,.partner-col p){
  color:rgba(238,236,230,.68)!important;
}

/* Safe-area et zoom : aucune action essentielle collée au bord. */
@supports(padding:max(0px)){
  html.ob4 .hd-in{padding-left:max(var(--ob4-safe),env(safe-area-inset-left))!important;padding-right:max(var(--ob4-safe),env(safe-area-inset-right))!important}
}

/* ========================================================================== 
   TYPOGRAPHIC AUTHORITY — exactly three visual families across the House.
   Legacy modules keep layout only; their historical font declarations can no
   longer create a competing typographic identity.
   ========================================================================== */
html.ob4 body{font-family:var(--ob4-ui)!important}
html.ob4 body *{font-family:inherit!important}
html.ob4 body :is(
  h1,h2,h3,h4,h5,h6,
  .display,.hero-h1,.ph-h1,.ph-h2,.pj-h1,.pensee-h1,.merci-h,.dxb-h1,
  .legacy-title,.legacy-quote,.stmt-q,.editorial-text,.pm-stanza,
  .logo-n,.brand-main,.brand-signature,.bien-title,
  .ob4-hero-title,.ob4-manifesto,.ob4-memory-title,.ob4-materials h2,
  .ob4-section-head h2,.ob4-project-card strong,.ob4-heritage-copy h2,
  .ob4-foundation h2,.ob4-contact h2,.ob4-event-hero h1,
  .ob4-event-chapter-head h2,.ob4-thanks h2,.ob4-grazie .big,
  .ob4-archives-hero h1,.ob4-archive-card h2
){font-family:var(--ob4-display)!important}
html.ob4 body :is(
  .eyebrow,.kicker,.hero-ey,.dxb-k,.pj-cat,.pj-loc,.cp-place,.fig-l,
  .logo-s,.lb,.ob4-hero-kicker,.ob4-hero-meta,.ob4-sound,.ob4-index,
  .ob4-memory-date,.ob4-material b,.ob4-material small,.ob4-text-link,
  .ob4-project-card span,.ob4-heritage-stamp,.ob4-event-date,
  .ob4-event-chapter-head .num,.ob4-thanks-kicker,.ob4-grazie .small,
  .ob4-archive-card .num,.ft-tag,.ft-cp,.ft-indep,.ft-legal
){font-family:var(--ob4-mono)!important}

/* 07 — Maison / transmission: distinct from heritage and from the Foundation. */
.ob4-transmission{min-height:76svh;display:grid;grid-template-columns:minmax(240px,.58fr) minmax(0,1.42fr);gap:clamp(48px,9vw,150px);align-items:center;background:var(--ob4-obsidian)!important}
.ob4-transmission-mark{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;padding-block:12px;border-right:1px solid var(--ob4-border)}
.ob4-transmission-year{margin:0;font:400 clamp(44px,5vw,76px)/.9 var(--ob4-display);letter-spacing:-.04em;color:rgba(238,236,230,.3);writing-mode:vertical-rl;transform:rotate(180deg)}
.ob4-transmission-copy{max-width:900px}
.ob4-transmission-copy h2{max-width:10ch;margin:0 0 34px;font:400 clamp(64px,7.8vw,122px)/.88 var(--ob4-display);letter-spacing:-.05em;color:var(--ob4-carrara)}
.ob4-transmission-copy p{max-width:650px;margin:0;font:400 16px/1.78 var(--ob4-ui);color:rgba(238,236,230,.62)}

/* 10 — Cinematic coda: the monolith returns to darkness before the footer. */
.ob4-coda{position:relative;min-height:92svh;display:grid;place-items:center;overflow:hidden;border-bottom:1px solid var(--ob4-border);background:var(--ob4-obsidian)!important;text-align:center}
.ob4-coda::after{content:"";position:absolute;inset:0;background:radial-gradient(50% 45% at 50% 47%,rgba(169,192,202,.026),transparent 70%);pointer-events:none}
.ob4-coda-monolith{position:absolute;left:50%;top:50%;width:min(23vw,300px);aspect-ratio:.57;transform:translate(-50%,-49%) scale(.96);clip-path:polygon(18% 2%,74% 0,96% 22%,87% 54%,99% 79%,62% 100%,8% 91%,0 31%);background:linear-gradient(106deg,#07090a 0 18%,#101316 18% 42%,#080a0b 42% 68%,#161a1d 68% 71%,#060708 71%);opacity:.3;filter:brightness(.55)}
.ob4-coda-monolith::after{content:"";position:absolute;left:49%;top:16%;width:1px;height:58%;background:linear-gradient(180deg,transparent,var(--ob4-champagne),transparent);opacity:.12}
.ob4-coda-copy{position:relative;z-index:2;padding:120px 22px}
.ob4-coda-copy h2{margin:0;font:400 clamp(82px,13vw,190px)/.76 var(--ob4-display);letter-spacing:-.055em;color:rgba(238,236,230,.88)}
.ob4-coda-copy p{margin:44px 0 0;font:500 10px/1 var(--ob4-mono);letter-spacing:.24em;color:var(--ob4-mist)}
.ob4-coda-copy small{display:block;margin-top:15px;font:500 9px/1 var(--ob4-mono);letter-spacing:.22em;color:rgba(238,236,230,.38)}
@media(max-width:900px){
  .ob4-transmission{grid-template-columns:1fr;gap:42px}.ob4-transmission-mark{min-height:130px;border-right:0;border-bottom:1px solid var(--ob4-border);flex-direction:row;align-items:flex-start}.ob4-transmission-year{writing-mode:horizontal-tb;transform:none;align-self:flex-end}.ob4-transmission-copy h2{font-size:clamp(58px,16vw,86px)}
  .ob4-coda{min-height:80svh}.ob4-coda-monolith{width:min(52vw,270px)}.ob4-coda-copy h2{font-size:clamp(78px,22vw,118px)}
}
