/* One visual language: editorial type, photographic scale and the original Orbit. */
.page-progress{position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:var(--gold);transform:scaleX(var(--page-progress,0));transform-origin:left;pointer-events:none}
.desktop-nav a[aria-current=location]{color:#8d703e}
.desktop-nav a[aria-current=location]:after{width:100%;background:var(--gold)}
.group{padding-top:110px;padding-bottom:100px}
.group-grid{display:block}
.group h2{font-size:clamp(46px,6.1vw,96px);line-height:1.04;max-width:1250px;letter-spacing:-.055em}
.group h2 .muted{color:inherit}
.group-copy{display:grid;grid-template-columns:1fr 1fr;gap:24px 9%;max-width:none;margin-top:60px;padding:0}
.group-copy>.lead{font-size:clamp(23px,2.15vw,34px);grid-row:span 2;max-width:580px}
.group-copy>p+p{margin:0;font-size:20px;max-width:480px}
.group-copy .text-link{grid-column:2;justify-self:start;align-self:end;margin:0}
.group-foot{margin-top:60px}
.experience-ready [data-reading] .read-word{color:rgb(20 20 20 / calc(.40 + .60 * clamp(0,var(--read-index,100) - var(--word-index),1)))}

.moments{overflow:hidden;background:var(--paper)}
.moment-frame{position:relative;height:clamp(620px,88svh,1000px);isolation:isolate;overflow:hidden;background:var(--ink);color:var(--paper);clip-path:inset(0 var(--moment-inset,0%))}
.moment-images,.moment-photo,.moment-shade{position:absolute;inset:0;width:100%;height:100%}
.moment-photo{object-fit:cover;opacity:0;transition:opacity 1.15s ease;object-position:50% 48%}
.moment-photo.is-active{opacity:1}
.moment-shade{background:linear-gradient(180deg,#0009 0%,#0001 42%,#000b 100%);pointer-events:none}
.moment-title{position:absolute;left:var(--gutter);right:var(--gutter);top:9%;pointer-events:none}
.moment-title>.eyebrow{display:block;margin-bottom:30px;color:#e1c38e}
.moment-title h2{font-size:clamp(64px,9.3vw,150px);font-weight:650;line-height:.9;letter-spacing:-.065em}
.moment-title p{font-size:clamp(18px,1.65vw,26px);line-height:1.4;margin-top:30px;max-width:380px}
.moment-bottom{position:absolute;left:var(--gutter);right:var(--gutter);bottom:42px;display:flex;justify-content:space-between;align-items:end;gap:30px}
.moment-caption{display:flex;align-items:center;gap:28px;min-width:0}
.moment-count{color:#e1c38e;white-space:nowrap}
.moment-explore{border-color:#be9e6580;font-size:13px;max-width:100%;text-shadow:0 1px 12px #0008}
.moment-name{font-size:inherit!important}
.moment-controls{display:flex;gap:8px;flex:none}
.moment-controls[hidden]{display:none}
.moment-controls button{min-width:72px;min-height:44px;border:1px solid #be9e6580;background:#14141455;color:var(--paper);font-family:var(--head);font-size:10px;padding:12px 15px;transition:background .25s,color .25s}
.moment-controls button:hover,.moment-controls button:focus-visible{background:var(--gold);color:var(--ink)}
.moment-pause[aria-pressed=true]{color:#e1c38e}
.moment-timeline{position:absolute;left:var(--gutter);right:var(--gutter);bottom:23px;height:1px;background:#ffffff4d}
.moment-timeline>span{display:block;width:100%;height:1px;background:var(--gold);transform-origin:left;transform:scaleX(var(--moment-step,.333333));transition:transform .6s ease}
.type-rail{overflow:hidden;padding:49px 0 58px;border-bottom:1px solid var(--line)}
.type-rail-track{display:flex;gap:.2em;white-space:nowrap;width:max-content;transform:translateX(var(--rail-x,0px));font-family:var(--head);font-stretch:125%;font-variation-settings:'wdth' 125;font-size:clamp(64px,10.3vw,170px);font-weight:600;line-height:1;letter-spacing:-.065em}
.rail-outline{color:transparent;-webkit-text-stroke:1px #9b8256}

.companies .section-heading h2{font-size:clamp(42px,5.6vw,88px)}
.companies .section-heading>p{max-width:320px;color:#bfb9ac;line-height:1.5}
.division-grid{grid-template-columns:1.13fr 1fr;gap:9%}
.division-tab{padding:31px 0;gap:22px;align-items:flex-start}
.division-tab>.eyebrow{margin-top:13px;align-self:start;color:var(--gold)}
.division-tab>span:nth-child(2){font-size:clamp(34px,5.1vw,80px);line-height:.96;min-width:0}
.division-name small{display:block;font-family:var(--body);font-size:15px;font-weight:400;font-stretch:normal;letter-spacing:0;line-height:1.45;max-height:0;opacity:0;overflow:hidden;margin-top:0;transition:max-height .45s,opacity .4s,margin .45s;color:#c8c1b2}
.division-tab[aria-selected=true] .division-name small{max-height:65px;opacity:1;margin-top:19px}
.division-tab b{align-self:center}
.division-tab:focus-visible{outline-offset:8px}
.division-panel{position:sticky;top:135px}
.division-image{height:clamp(270px,25vw,420px);margin-bottom:29px}
.division-panel .division-image>img[src$="/agency-event-presenter.webp"]{filter:grayscale(.8)}
.division-panel h3{font-size:27px;line-height:1.13;max-width:420px}
.division-panel p{font-size:19px;line-height:1.5}
.specialist-list button{min-height:100px;transition:padding .4s,color .35s}
.specialist-list button:hover{padding-left:12px}
.specialist-list button>span{font-size:clamp(16px,1.6vw,24px)}

.worlds{padding-top:100px;padding-bottom:100px}
.universe-heading h2{font-size:clamp(58px,7.8vw,125px)}
.world-grid{display:block;isolation:isolate}
.worlds .world-card:nth-child(n){max-width:none;padding:0;margin:0 0 36px;background:var(--paper);border-top:1px solid var(--line)}
.world-card>button{display:grid;grid-template-columns:1.35fr 1fr;align-items:stretch;background:var(--paper)}
.worlds .world-card:nth-child(n) .world-image{height:clamp(430px,61svh,710px);margin:0}
.world-story{display:flex;flex-direction:column;align-items:flex-start;padding:35px 30px 30px 45px;min-width:0}
.world-index{color:#786749;margin-bottom:auto;font-size:9px}
.world-card-head{display:block;margin-top:50px}
.world-card-head h3{font-size:clamp(35px,4.2vw,67px);line-height:.98;letter-spacing:-.055em;max-width:470px}
.world-card p{font-size:20px;line-height:1.4;max-width:350px;margin-top:24px}
.world-place{font-size:14px;margin-top:30px;color:#6e685e}
.world-story .world-type{font-size:8px;line-height:1.6;margin-top:9px}
.world-enter{display:flex;gap:35px;align-items:center;margin-top:auto;padding-top:40px;font-family:var(--head);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}
.world-enter .orbit-glyph{color:#927441;transition:transform .5s}
.world-card button:hover .world-enter .orbit-glyph{transform:scaleX(1.2)}
.world-card .type-art{min-height:100%}
.world-card .type-art>strong{font-size:clamp(56px,6vw,96px)}
@media(min-width:1001px) and (prefers-reduced-motion:no-preference){
  .worlds .world-card:nth-child(n){position:sticky;top:calc(117px + 11px * var(--card-order));z-index:calc(1 + var(--card-order));margin-bottom:110px;transform:scale(var(--stack-scale,1));transform-origin:50% 0;box-shadow:0 -15px 45px #14141406}
  .worlds .world-card:focus-within{position:relative;top:auto;transform:none}
}
.method-visual{isolation:isolate}
.method-orbit{position:absolute;inset:12% 6%;background:#be9e65b3;-webkit-mask:url('assets/ICONIC_ORBIT_LIGHT_BLACK_v04.svg') center/contain no-repeat;mask:url('assets/ICONIC_ORBIT_LIGHT_BLACK_v04.svg') center/contain no-repeat;z-index:1;pointer-events:none;mix-blend-mode:screen}
.method-number{z-index:2}
.method-tabs button{transition:color .3s,border-color .4s}
.article{transition:border-color .4s,transform .4s}
.article:hover{transform:translateY(-6px);border-color:var(--gold)}
.article-top>b .orbit-glyph{transition:transform .4s}
.article:hover .article-top>b .orbit-glyph{transform:scaleX(1.2)}
.contact-title h2{font-size:clamp(80px,11.4vw,180px)}
.footer-top{padding-bottom:35px}
.footer-signature{overflow:hidden;padding:35px 0 60px}
.footer-signature>img{width:100%;height:auto;max-height:330px;object-fit:contain;object-position:left center}
.footer-bottom{border-top:1px solid #45433f;padding-top:24px}
.solid-button{position:relative;overflow:hidden;isolation:isolate}
.solid-button:before{content:'';position:absolute;inset:0;z-index:-1;background:var(--gold);transform:translateX(-101%);transition:transform .4s cubic-bezier(.16,1,.3,1)}
.solid-button:hover{background:transparent}
.solid-button:hover:before{transform:translateX(0)}

@media(max-width:1000px){
  .division-grid{gap:6%}
  .division-tab{gap:14px;padding:25px 0}
  .division-tab>span:nth-child(2){font-size:4.5vw}
  .division-name small{font-size:13px}
  .division-panel{top:110px}
  .world-story{padding:30px 24px}
  .world-card-head h3{font-size:clamp(30px,4.5vw,48px)}
  .world-card p{font-size:18px}
}
@media(max-width:600px){
  .group{padding-top:65px;padding-bottom:55px}
  .group h2{font-size:clamp(30px,8vw,47px);letter-spacing:-.06em}
  .group-copy{display:block;margin-top:35px}
  .group-copy>.lead{font-size:23px}
  .group-copy>p+p{font-size:17px;margin-top:22px}
  .group-copy .text-link{margin-top:20px}
  .group-foot{margin-top:35px}
  .moment-frame{height:82svh;min-height:590px;clip-path:none}
  .moment-title{top:8%}
  .moment-title>.eyebrow{font-size:8px;margin-bottom:27px}
  .moment-title h2{font-size:10.8vw;line-height:.95}
  .moment-title p{font-size:17px;margin-top:25px}
  .moment-bottom{bottom:43px;flex-direction:column;align-items:stretch;gap:22px}
  .moment-caption{justify-content:space-between;gap:14px}
  .moment-explore{font-size:9px;gap:15px}
  .moment-count{font-size:8px}
  .moment-controls{justify-content:flex-end}
  .moment-controls button{min-width:65px;font-size:9px}
  .moment-explore .orbit-glyph{width:23px}
  .type-rail{padding:30px 0 36px}
  .type-rail-track{font-size:17vw}
  .companies .section-heading h2{font-size:9.2vw}
  .division-list{gap:0 18px}
  .division-tab{padding:23px 0;gap:7px;align-items:center}
  .division-tab>.eyebrow{margin:0;align-self:center}
  .division-tab>span:nth-child(2){font-size:4.8vw}
  .division-name small{display:none}
  .division-panel{position:static}
  .division-image{height:270px}
  .division-panel h3{font-size:26px}
  .division-panel p{font-size:18px}
  .specialist-list button{min-height:90px}
  .specialist-list button>span{font-size:14px}
  .specialist-list button:hover{padding-left:0}
  .worlds{padding-top:60px;padding-bottom:55px}
  .universe-heading h2{font-size:11.3vw}
  .world-card>button{display:block}
  .worlds .world-card:nth-child(n){margin-bottom:30px;border:0}
  .worlds .world-card:nth-child(n) .world-image{height:340px}
  .world-story{padding:24px 0 28px}
  .world-card-head{margin-top:24px}
  .world-card-head h3{font-size:11vw;max-width:340px}
  .world-card p{font-size:18px;margin-top:18px}
  .world-place{margin-top:20px}
  .world-enter{padding-top:25px;font-size:9px}
  .world-index{font-size:8px}
  .world-card .type-art>strong{font-size:17vw}
  .contact-title h2{font-size:13.5vw}
  .footer-top>.eyebrow{font-size:8px}
  .footer-signature{padding:18px 0 36px}
  .footer-bottom{font-size:7px;gap:15px}
}
@media(prefers-reduced-motion:reduce){
  .experience-ready [data-reading] .read-word{color:var(--ink)}
  .moment-frame{clip-path:none}
  .type-rail-track{transform:none}
  .worlds .world-card:nth-child(n){position:relative;top:auto;transform:none}
  .moment-photo,.moment-timeline>span{transition:none}
  .article:hover{transform:none}
}

/* Each division reveals its companies and IP in the same reading panel. */
.division-portfolio{margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}
.division-portfolio h4{font-size:9px;font-weight:500;letter-spacing:.1em;color:var(--gold);margin:0 0 12px}
.division-portfolio ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}
.division-portfolio li{min-width:0;border-bottom:1px solid var(--line)}
.division-entity{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:65px;padding:12px 0;text-align:left;color:inherit}
.division-entity>span:first-child{min-width:0}
.division-entity strong{display:block;font-family:var(--head);font-size:11px;font-weight:500;line-height:1.45;letter-spacing:.01em;overflow-wrap:break-word}
.division-entity small{display:block;font-size:12px;line-height:1.35;color:#bcb6a9;margin-top:5px}
.division-entity .orbit-glyph{width:19px;height:14px;color:var(--gold);transition:transform .3s}
.division-entity:hover strong{color:var(--gold)}
.division-entity:hover .orbit-glyph{transform:scaleX(1.15)}
.division-pipeline p{font-size:16px;color:#c8c1b2}
.division-panel>.text-link{margin-top:21px}
.dialog-body .division-portfolio{margin-top:28px;border-color:#14141430}
.dialog-body .division-portfolio h4{color:var(--ink)}
.dialog-body .division-portfolio li{border-color:#14141430}
.dialog-body .division-entity small{color:#625f58}
.dialog-body .division-entity:hover strong{color:#786239}
@media(min-width:851px){.division-image{height:clamp(230px,20vw,330px);margin-bottom:24px}.division-panel{top:115px}.division-panel>p{font-size:18px;line-height:1.45}}
@media(max-width:600px){.division-portfolio{margin-top:23px;padding-top:18px}.division-portfolio ul{gap:0 15px}.division-entity{gap:8px;min-height:70px}.division-entity strong{font-size:10px}.division-entity small{font-size:11px}.division-entity .orbit-glyph{width:17px;height:12px}.division-image{height:240px}}

.world-detail-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:30px 0}
.world-detail-gallery:has(figure:only-child){grid-template-columns:minmax(0,360px)}
.world-detail-gallery.gallery-wide,.world-detail-gallery.gallery-wide:has(figure:only-child){grid-template-columns:1fr}
.world-detail-gallery.gallery-wide img{aspect-ratio:3/2}
.world-detail-gallery figure{margin:0;min-width:0}
.world-detail-gallery img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;display:block}
.world-detail-gallery figcaption{font-family:var(--head);font-size:7px;letter-spacing:.05em;color:#625f58;margin-top:9px;line-height:1.5}
@media(max-width:600px){.world-detail-gallery{gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}.world-detail-gallery figure:nth-child(3){display:none}.world-detail-gallery figcaption{font-size:6px}}

.dialog-hero:has(.social-house-photo){height:clamp(330px,43vw,480px)}
.operastranda-photo{scale:1.16;transform-origin:50% 45%}
.dialog-hero:has(.operastranda-photo){height:clamp(320px,34vw,440px)}
.world-detail-gallery[data-world="operastranda"] img{aspect-ratio:16/9}
@media(max-width:600px){.detail-dialog:has(.operastranda-photo) #detail-title{font-size:clamp(23px,7vw,32px);overflow-wrap:anywhere}}

/* A visible production credit stays with the Brækhus image in Ventures. */
.division-panel>.division-credit,.dialog-body>.division-credit{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 7px;font-size:11px;line-height:1.6;margin:-10px 0 25px;color:var(--muted)}
.division-credit button{padding:0;color:var(--gold);font-family:var(--head);font-size:10px;font-weight:600;border-bottom:1px solid #be9e6580}
.dialog-body>.division-credit{margin:20px 0;color:#625f58}
.dialog-body .division-credit button{color:#786239}
.specialist-work{margin:32px 0;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.specialist-work>h3{font-size:12px;letter-spacing:.04em;margin:0 0 18px}
.specialist-work figure{margin:0 0 18px}
.specialist-work img{width:100%;height:auto;aspect-ratio:1.9;object-fit:cover}
.specialist-work figcaption{margin-top:10px;color:#625f58}

/* Category and location can be combined, with a clear way back from no results. */
.universe-controls{flex-wrap:wrap;align-items:flex-end;gap:18px 24px}
.universe-refine{display:flex;align-items:flex-end;gap:24px;margin-left:auto}
.location-filter{display:flex;align-items:center;gap:12px}
.location-filter>.eyebrow{font-size:9px;text-transform:uppercase;color:#65625b}
.location-filter select{min-width:145px;min-height:44px;max-width:100%;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);padding:10px 30px 10px 12px;font-family:var(--head);font-size:11px;cursor:pointer}
.location-filter select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.universe-refine .result-count{margin:0;padding-bottom:13px;white-space:nowrap}
.world-empty{min-height:310px;padding:50px 0;border-bottom:1px solid var(--line)}
.world-empty>.eyebrow{color:#786239}
.world-empty h3{font-size:clamp(25px,3vw,38px);margin:20px 0 14px}
.world-empty p{color:#65625b;font-size:17px}
.world-empty .text-link{margin-top:20px}
@media(max-width:600px){
 .universe-controls{display:flex;align-items:stretch;gap:18px}
 .universe-controls>.filters{width:100%;gap:8px}
 .universe-refine{width:100%;justify-content:space-between;margin:0;gap:14px}
 .location-filter{gap:9px;min-width:0}
 .location-filter select{min-width:136px}
 .universe-refine .result-count{font-size:8px}
 .division-panel>.division-credit{font-size:10px;margin:-9px 0 22px}
}
