/* ARNAUD MONACO V60. Obsidian editorial and intelligent light system. */
:root{
  --amber:#a94f32!important;
  --gold-1:#c36b49!important;
  --gold-2:#a94f32!important;
  --gold-3:#58271b!important;
  --gold:linear-gradient(128deg,#c36b49 0%,#a94f32 48%,#71301f 100%)!important;
  --copper:#a94f32;
  --copper-light:#c36b49;
  --copper-deep:#58271b;
  --v59-orange:#a94f32;
  --v59-orange-hot:#c36b49;
  --v59-carbon:#09090a;
  --v59-ivory:#f1f0ed;
}
html,body{max-width:100%;overflow-x:clip}

/* Display copy must never inherit paragraph justification. */
.netclose .stmt{
  text-align:center!important;text-align-last:center!important;
  letter-spacing:-.045em!important;max-width:18ch!important;text-wrap:balance!important;
}
.ae-kick,.env-pull p,.quote p,.quote blockquote,.oc-note{
  text-align:left!important;text-align-last:left!important;text-wrap:balance!important;
}

/* One accent language. Champagne, yellow gold and legacy orange are neutralised. */
.rpt-kicker,.rpt-action b,.bk,.dnum,.tl-when .w,.say-link,.say-link .arw,
.disc-col .dnum,.cred .ci,.quote .mark,.oc-label,.oc-num .x,.oc-num .oc-pre,
.oc-k,.mstep-n,.ae-step .aen,.netseq-idx,.eco-cell .ecn,.card .n,
.persp-card .tag,.persp-card .more .arr,.press-row .more .arr{
  color:var(--v59-orange)!important;
  -webkit-text-fill-color:var(--v59-orange)!important;
}
.cred .ci{border-color:rgba(169,79,50,.34)!important}
.card.feature{border-color:rgba(169,79,50,.34)!important}
.mseq-dots i{background:var(--v59-orange)!important}
.netclose em{color:var(--v59-orange)!important}

/* A contemporary light field that is felt, not advertised. */
body::before{
  content:"";position:fixed;z-index:-2;inset:-25vh -20vw;pointer-events:none;
  background:
    radial-gradient(42vw 34vw at var(--v59-x,78%) var(--v59-y,14%),rgba(169,79,50,.115),transparent 72%),
    radial-gradient(34vw 28vw at 18% 64%,rgba(92,43,31,.08),transparent 76%);
  transition:background-position .8s cubic-bezier(.2,.7,.2,1);
}
.band,.cband,.outcomes{
  background:linear-gradient(132deg,#0a0a0b 0%,#100d0c 48%,#09090a 100%)!important;
}
.sec-top::before,.net-head::before{
  background:linear-gradient(90deg,var(--v59-orange) 0 64px,rgba(255,255,255,.12) 64px)!important;
}
.capital-line::before{
  background:linear-gradient(to bottom,var(--v59-orange-hot),var(--v59-orange),var(--copper-deep))!important;
  box-shadow:0 0 22px rgba(169,79,50,.28)!important;
}
.capital-line::after{background:var(--v59-orange)!important;box-shadow:0 0 0 5px rgba(169,79,50,.1),0 0 24px rgba(169,79,50,.38)!important}

/* Report card: a moving editorial sheen instead of a decorative gold frame. */
.hero .rpt-feature{
  border-color:rgba(169,79,50,.46)!important;
  background:linear-gradient(118deg,rgba(12,12,13,.88),rgba(18,13,11,.78))!important;
  box-shadow:0 30px 90px -32px rgba(0,0,0,.98),0 0 0 1px rgba(255,255,255,.025) inset!important;
}
.hero .rpt-feature::before{
  background:linear-gradient(108deg,transparent 12%,rgba(195,107,73,.15) 42%,transparent 67%)!important;
  transform:translateX(-75%);animation:v59-sheen 8s cubic-bezier(.2,.7,.2,1) infinite;
}
.hero .rpt-action>span{border-color:rgba(169,79,50,.72)!important}
@keyframes v59-sheen{0%,55%{transform:translateX(-75%)}78%,100%{transform:translateX(95%)}}

/* A strict tablet composition. This is where the previous layout broke. */
@media (min-width:601px) and (max-width:900px){
  .topbar{width:calc(100% - 52px)!important;left:26px!important;right:26px!important}
  .brand-word{display:none!important}
  .hero{min-height:900px!important;height:auto!important}
  .hero .hl-ui{display:flex!important;flex-direction:column!important;justify-content:flex-end!important;gap:24px!important;padding:138px 26px 42px!important}
  .hero .hl-copy{width:min(100%,620px)!important;max-width:none!important}
  .hero .rpt-feature{width:min(100%,620px)!important;margin:0!important;transform:none!important}
  .hero .scroll-cue,.hero .hero-side-note,.hero .scrollrow{display:none!important}
  .proof-grid,.cards,.eco-grid{grid-template-columns:1fr!important}
  .proof-item,.card,.eco-cell{min-width:0!important}
  .wrap{padding-left:26px!important;padding-right:26px!important}
  .sec-top{grid-template-columns:1fr!important;gap:14px!important}
  .sec-top .idx{position:absolute!important;right:26px!important;top:18px!important}
}

/* Motion is attached by v59-direction.js. */
.v59-motion .v59-reveal{opacity:0;transform:translateY(30px);filter:blur(4px)}
.v59-motion .v59-reveal.v59-seen{opacity:1;transform:none;filter:none;transition:opacity .9s ease,transform 1.05s cubic-bezier(.16,.76,.2,1),filter .85s ease}
.v59-motion .card,.v59-motion .persp-card,.v59-motion .proof-item{
  transition:transform .55s cubic-bezier(.16,.76,.2,1),border-color .45s ease,background-color .45s ease,box-shadow .55s ease!important;
}
@media (hover:hover){
  .v59-motion .card:hover,.v59-motion .persp-card:hover{
    transform:translateY(-6px)!important;border-color:rgba(169,79,50,.42)!important;
    box-shadow:0 28px 68px -40px rgba(169,79,50,.42)!important;
  }
}

@media(max-width:600px){
  .hero .scroll-cue,.hero .hero-side-note,.hero .scrollrow{display:none!important}
  .hero .rpt-feature::before{animation-duration:10s}
  .v59-motion .v59-reveal{transform:translateY(18px);filter:none}
}
@media(prefers-reduced-motion:reduce){
  body::before,.hero .rpt-feature::before{animation:none!important;transition:none!important}
  .v59-motion .v59-reveal,.v59-motion .v59-reveal.v59-seen{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
}

/* Institutional pages: one recognisable editorial architecture. */
.ph,.page-head{position:relative;isolation:isolate;overflow:hidden}
.ph::before,.page-head::before{
  content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;
  background:
    linear-gradient(115deg,rgba(169,79,50,.09),transparent 34%),
    radial-gradient(45% 75% at 88% 16%,rgba(169,79,50,.09),transparent 72%);
}
.ph::after,.page-head::after{
  content:"";position:absolute;z-index:-1;right:clamp(24px,6vw,92px);top:28%;width:min(30vw,360px);aspect-ratio:1;
  border:1px solid rgba(169,79,50,.13);border-radius:50%;box-shadow:0 0 0 42px rgba(169,79,50,.025),0 0 0 84px rgba(169,79,50,.018);
  animation:v59-orbit 14s ease-in-out infinite alternate;
}
@keyframes v59-orbit{to{transform:translate3d(-16px,18px,0) scale(1.04);opacity:.72}}
.ph h1,.page-head h1{text-wrap:balance;letter-spacing:-.045em!important;max-width:16ch}
.ph .standfirst,.page-head .standfirst{max-width:62ch;hyphens:auto;text-wrap:pretty}
.ph .back,.page-head .back{transition:color .35s ease,transform .35s ease;display:inline-flex}
.ph .back:hover,.page-head .back:hover{color:var(--v59-orange-hot)!important;transform:translateX(-3px)}

/* Long-form reading pages. */
.article-body,.body-pad .wrap{position:relative}
.article-body::before,.body-pad .wrap::before{
  content:"";position:absolute;left:clamp(-42px,-4vw,-20px);top:0;bottom:0;width:1px;
  background:linear-gradient(to bottom,rgba(169,79,50,.58),rgba(255,255,255,.08) 20%,rgba(255,255,255,.05) 82%,transparent);
}
.article-body h2,.body-pad h2{text-wrap:balance;position:relative}
.article-body h2::before,.body-pad h2::before{
  content:"";position:absolute;left:clamp(-42px,-4vw,-20px);top:.62em;width:18px;height:1px;background:var(--v59-orange);
}
.article-body p,.body-pad p{hyphens:auto}
.more-reading{border-top-color:rgba(169,79,50,.32)!important;background:linear-gradient(135deg,rgba(169,79,50,.055),transparent 42%)}
.more-reading a{transition:color .35s ease,padding-left .35s ease!important}
.more-reading a:hover{color:var(--v59-orange-hot)!important;padding-left:8px}

/* Track record, network, press and perspective systems. */
.tl-row,.erow,.press-row,.persp-card,.eco-cell{
  position:relative;overflow:hidden;
}
.tl-row::after,.erow::after,.press-row::after,.persp-card::after,.eco-cell::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(112deg,rgba(169,79,50,.065),transparent 44%);opacity:0;transition:opacity .45s ease;
}
.tl-row:hover::after,.erow:hover::after,.press-row:hover::after,.persp-card:hover::after,.eco-cell:hover::after{opacity:1}
.tl-row,.press-row{transition:padding-left .45s cubic-bezier(.16,.76,.2,1),border-color .4s ease!important}
@media(hover:hover){.tl-row:hover,.press-row:hover{padding-left:clamp(10px,1.4vw,22px);border-color:rgba(169,79,50,.3)!important}}
.persp-card{background:linear-gradient(145deg,rgba(255,255,255,.022),transparent 55%)!important}
.eco-cell{transition:background-color .4s ease,transform .45s cubic-bezier(.16,.76,.2,1)!important}
@media(hover:hover){.eco-cell:hover{background-color:rgba(169,79,50,.045)!important;transform:translateY(-3px)}}

/* Publication pages retain their own visual identity. */
body:has(>nav.nav) .hero{position:relative;isolation:isolate}
body:has(>nav.nav) .hero::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(46% 70% at 82% 18%,rgba(169,79,50,.14),transparent 75%);
}
body:has(>nav.nav) .cover{
  transition:transform 1s cubic-bezier(.16,.76,.2,1),filter .8s ease,box-shadow .8s ease!important;
  filter:saturate(.92) contrast(1.02);
}
@media(hover:hover){body:has(>nav.nav) .cover:hover{transform:translateY(-8px) rotate(.45deg);box-shadow:0 55px 110px -42px rgba(169,79,50,.42)!important}}
body:has(>nav.nav) .access,body:has(>nav.nav) .paper{position:relative;overflow:hidden}
body:has(>nav.nav) .access::before,body:has(>nav.nav) .paper::before{
  content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(169,79,50,.055),transparent 32%);
}

/* Small utility pages should feel intentional rather than unfinished. */
main.w,main.main{position:relative;isolation:isolate}
main.w::before,main.main::before{
  content:"";position:absolute;z-index:-1;right:-12%;top:4%;width:min(42vw,480px);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(169,79,50,.12),transparent 70%);filter:blur(2px);
}

@media(max-width:760px){
  .ph::after,.page-head::after{right:-120px;top:22%;width:280px;opacity:.55}
  .ph h1,.page-head h1{max-width:100%}
  .article-body::before,.body-pad .wrap::before,.article-body h2::before,.body-pad h2::before{display:none}
}
@media(prefers-reduced-motion:reduce){.ph::after,.page-head::after{animation:none!important}}

/* V60: obsidian panels inspired by high-end financial interfaces, edited for a personal brand. */
.proof-item,.card,.persp-card,.eco-cell,.cred,.factcard,.pt-card,.press-row,.more-reading{
  --card-x:76%;--card-y:12%;
  border-color:rgba(255,255,255,.085)!important;
  background:
    radial-gradient(320px 220px at var(--card-x) var(--card-y),rgba(169,79,50,.16),transparent 68%),
    linear-gradient(145deg,rgba(255,255,255,.034),rgba(255,255,255,.012) 56%,rgba(169,79,50,.022))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 30px 80px -58px rgba(0,0,0,.95);
}
.proof-item::before,.card::before,.persp-card::before,.eco-cell::before,.cred::before,.factcard::before,.pt-card::before{
  content:"";position:absolute;z-index:2;inset:0;pointer-events:none;border-radius:inherit;
  background:linear-gradient(112deg,transparent 8%,rgba(255,255,255,.055) 28%,transparent 48%);opacity:.34;
  mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);padding:1px;
}
@media(hover:hover){
  .proof-item:hover,.card:hover,.persp-card:hover,.eco-cell:hover,.cred:hover,.factcard:hover,.pt-card:hover{
    border-color:rgba(169,79,50,.38)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 34px 86px -48px rgba(169,79,50,.36)!important;
  }
}

/* Large sections become cinematic fields rather than stacked rectangles. */
.sec,.psec,.body-pad,.paper,.access{isolation:isolate}
.sec:nth-of-type(even),.psec:nth-of-type(even){
  background-image:radial-gradient(54vw 34vw at 92% 12%,rgba(169,79,50,.055),transparent 74%)!important;
}
.outcomes,.cband,.band{
  background-image:
    radial-gradient(48vw 28vw at 78% 20%,rgba(169,79,50,.11),transparent 75%),
    linear-gradient(132deg,#09090a,#110d0c 48%,#09090a)!important;
}

/* High-value numbers receive the same controlled glow as the supplied references. */
.oc-num,.stat .num,.metric .num,.proof-item strong{
  text-shadow:0 0 34px rgba(169,79,50,.15);
}
.oc-num::after,.stat .num::after{
  content:"";display:block;width:42px;height:1px;margin-top:14px;
  background:linear-gradient(90deg,var(--v59-orange),transparent);
}

/* Editorial image frames, never generic SaaS mockups. */
.shot,.clip,.env-figure,.rpt-cover,.cover{
  position:relative;border-color:rgba(255,255,255,.1)!important;
  box-shadow:0 42px 100px -52px rgba(0,0,0,.98),0 0 58px -38px rgba(169,79,50,.28)!important;
}
.shot img,.clip img,.env-figure img,.rpt-cover img{filter:saturate(.88) contrast(1.035);transition:filter .65s ease,transform .8s cubic-bezier(.16,.76,.2,1)}
@media(hover:hover){.shot:hover img,.clip:hover img,.env-figure:hover img,.rpt-cover:hover img{filter:saturate(1) contrast(1.05);transform:scale(1.012)}}

/* A quiet pulse identifies primary actions without turning them into app buttons. */
.abtn.primary,.cta .primary,.btn-book,.rpt-submit{
  background:linear-gradient(115deg,#8e3e29,#b95b3b 56%,#8e3e29)!important;
  background-size:180% 100%!important;
  box-shadow:0 18px 52px -28px rgba(169,79,50,.72)!important;
  animation:v60-action 7s ease-in-out infinite;
}
@keyframes v60-action{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}

@media(max-width:760px){
  .proof-item,.card,.persp-card,.eco-cell,.cred,.factcard,.pt-card,.press-row,.more-reading{
    background:linear-gradient(145deg,rgba(255,255,255,.032),rgba(169,79,50,.022))!important;
  }
}
@media(prefers-reduced-motion:reduce){.abtn.primary,.cta .primary,.btn-book,.rpt-submit{animation:none!important}}

/* V60.5 mobile editorial corrections: compact expertise title and centred endorsement. */
#disciplines .disciplines-title,#track .career-title{white-space:nowrap;text-wrap:nowrap}
.quote>.wrap{display:flex;justify-content:center}
.quote>.wrap>.reveal{width:min(100%,980px);margin-inline:auto;text-align:center}
.quote blockquote,.quote cite{text-align:center!important;text-align-last:center!important;margin-inline:auto}
.quote blockquote{max-width:920px}
.quote .mark{left:50%!important;transform:translateX(-50%)}
.oc-num[data-count]{font-variant-numeric:tabular-nums}
.oc-num[data-count] .oc-count{display:inline-block;min-width:.62em;transition:filter .35s ease,color .35s ease}
.oc-num[data-count].is-counting .oc-count{color:#fff;filter:drop-shadow(0 0 14px rgba(169,79,50,.45))}
@media(max-width:760px){
  #disciplines .disciplines-title{font-size:clamp(18px,5.35vw,22px)!important;letter-spacing:-.035em!important}
  #track .career-title{font-size:clamp(17px,4.9vw,21px)!important;letter-spacing:-.04em!important}
  .quote>.wrap>.reveal{padding-inline:4px}
  .quote blockquote{font-size:clamp(27px,7.6vw,38px)!important;line-height:1.12!important;text-wrap:balance}
  .quote cite{display:block;max-width:32ch;margin-top:28px!important;line-height:1.5!important}
}
@media(prefers-reduced-motion:reduce){.oc-num[data-count] .oc-count{transition:none!important;filter:none!important}}
