/* Three deliberately distinct compositions: network, sector explorer, studio. */
.network-section{padding-top:65px;padding-bottom:65px;text-align:center}
.network-intro{max-width:650px;margin:auto}.network-intro p{font-size:18px;line-height:1.65}
.network-canvas{height:385px;position:relative;margin-top:15px;isolation:isolate}
.network-rings{position:absolute;left:50%;top:50%;width:295px;height:295px;transform:translate(-50%,-50%);border:1px solid #cce1ec;border-radius:50%;box-shadow:0 0 0 60px #f3f8fb,0 0 0 61px #e1edf4,0 0 0 120px #fbfdff;z-index:-1}
.network-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.network-lines path{fill:none;stroke:#8db5c9;stroke-width:1.5;stroke-dasharray:1600;stroke-dashoffset:0}
.network-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:155px;height:155px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(at 20% 0,#fff,#f4fbff);border:1px solid #fff;border-radius:50%;box-shadow:inset 0 1px 10px #fff,0 12px 40px #477f9522;z-index:2}
.network-core img{width:53px;height:53px;object-fit:contain;margin-bottom:6px}.network-core b{font-size:16px;font-weight:550}.network-core span{font-size:12px;color:#628297;margin-top:4px}
.network-person{position:absolute;display:flex;align-items:center;gap:13px;text-align:left;padding:13px 19px 13px 13px;background:#fff;border:1px solid #dce8ee;border-radius:16px;box-shadow:0 14px 35px #244b6010;z-index:3}
.network-person img{width:49px;height:49px;object-fit:cover;border-radius:50%}.network-person b{font-size:16px;display:block;font-weight:550}.network-person span{display:block;font-size:12px;color:#608094;margin-top:6px}
.network-a{left:8%;top:28px;transform:rotate(-4deg)}.network-b{right:4%;top:24px;transform:rotate(3deg)}.network-c{left:1%;bottom:30px;transform:rotate(2deg)}
.network-opportunity{position:absolute;right:1%;bottom:18px;width:265px;text-align:left;padding:20px 24px;background:linear-gradient(120deg,#e4f4ed,#f4faf7);border:1px solid #cce2d7;border-radius:16px;transform:rotate(-3deg);z-index:2}.network-opportunity span{font-size:12px;color:#5b8174}.network-opportunity b{display:block;font-size:21px;font-weight:500;margin:12px 0;line-height:1.35}.network-opportunity i{font-style:normal;font-size:12px;color:#618575}
.network-caption{font-size:13px!important;margin-top:24px!important}
.reveal-ready .network-lines path{stroke-dashoffset:1600}.reveal-ready.is-revealed .network-lines path{stroke-dashoffset:0;transition:stroke-dashoffset 1.6s ease}
.reveal-ready .network-person,.reveal-ready .network-opportunity{opacity:0;translate:0 28px}.reveal-ready.is-revealed .network-person,.reveal-ready.is-revealed .network-opportunity{opacity:1;translate:0 0;transition:opacity .5s ease,translate .8s cubic-bezier(.2,.8,.2,1)}
.is-revealed .network-b{transition-delay:.12s!important}.is-revealed .network-c{transition-delay:.24s!important}.is-revealed .network-d{transition-delay:.36s!important}
.sector-explorer{max-width:1160px;margin:20px auto 70px;padding:48px 0 0;border-top:1px solid #dce8ef}
.sector-top{display:flex;justify-content:space-between;align-items:end;gap:50px;padding:0 0 30px}.sector-top h2{max-width:540px;margin:0}.sector-top p{max-width:280px;margin:0;font-size:16px}
.sector-switch{display:flex;border-bottom:1px solid #bcd3df;gap:0}.sector-switch button{position:relative;flex:1;padding:21px 13px;background:none;border:0;font:500 14px/1.45 Geist,Arial,sans-serif;color:#57778b;cursor:pointer;min-height:68px}.sector-switch button[aria-selected=true]{color:#244b60;background:#f3f8fb}.sector-switch button:after{content:'';position:absolute;height:3px;left:0;right:0;bottom:-1px;background:#285f7c;transform:scaleX(0);transition:transform .25s}.sector-switch button[aria-selected=true]:after{transform:scaleX(1)}
.sector-panel{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;padding:48px 20px 48px 0;align-items:center;min-height:375px}.sector-panel[hidden],.studio-panel[hidden]{display:none!important}
.sector-statement h3{font-family:DMSerifDisplay,Georgia,serif;font-size:34px;max-width:370px}.sector-statement p{font-size:16px;max-width:355px;line-height:1.65}.sector-statement .button{font-size:14px}
.sector-connection{position:relative;display:grid;grid-template-columns:.8fr 50px 1.3fr;align-items:center;min-width:0}.sector-offer span,.sector-destination>span{font-size:12px;display:block;color:#628393;margin-bottom:12px}.sector-offer strong{font-family:DMSerifDisplay,Georgia,serif;font-size:26px;font-weight:400;line-height:1.2;display:block}.sector-wire{height:1px;background:#80adbd;position:relative}.sector-wire:after{content:'';width:7px;height:7px;border-radius:50%;background:#6397ad;position:absolute;right:0;top:-3px}.sector-wire span{position:absolute;top:-27px;left:0;font-size:11px;white-space:nowrap}
.sector-destination{padding:28px 23px;background:linear-gradient(130deg,#e5f2ed,#f3f8f5);border-radius:22px;border:1px solid #d3e6dc;position:relative;min-width:0}.sector-destination>strong{font-family:DMSerifDisplay,Georgia,serif;font-size:30px;font-weight:400;line-height:1.2;display:block;overflow-wrap:anywhere}.sector-contact{display:flex;gap:12px;align-items:center;margin-top:27px;padding-top:20px;border-top:1px solid #c4dacf}.sector-contact img{width:45px;height:45px;object-fit:cover;border-radius:50%}.sector-contact b{font-size:14px;font-weight:550;display:block}.sector-contact small{display:block;font-size:12px;line-height:1.5;margin-top:5px;color:#608074}.sector-footnote{font-size:12px!important;margin:0!important;padding:0 0 25px;border-bottom:1px solid #dce8ef}
.sector-panel.is-switching .sector-destination{animation:sector-arrival .55s cubic-bezier(.2,.8,.2,1) both}.sector-panel.is-switching .sector-statement{animation:sector-copy .35s ease both}@keyframes sector-arrival{from{opacity:0;transform:translateX(28px) rotate(3deg)}to{opacity:1;transform:none}}@keyframes sector-copy{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.agency-studio{max-width:1160px;margin:55px auto 45px}.studio-heading{max-width:750px;text-align:center;margin:0 auto 30px}.studio-heading p{font-size:18px}.studio-switch{display:flex;justify-content:center;gap:34px;margin-bottom:35px}.studio-switch button{background:none;border:0;border-bottom:2px solid transparent;border-radius:0;padding:10px 0;font:500 15px Geist,sans-serif;color:#6b8493;cursor:pointer}.studio-switch button[aria-selected=true]{border-color:#285f7c;color:#244b60}
.studio-theatre{border-radius:30px;overflow:hidden;background:#f5ede4;border:1px solid #eae0d5;transition:background .4s}.studio-panel{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;min-height:430px;padding:44px 45px;gap:55px}.studio-copy{position:relative;z-index:2}.studio-copy h3{font-size:39px;max-width:335px}.studio-copy p{font-size:17px;max-width:335px;color:#6f746f;line-height:1.7}.studio-copy .button{font-size:14px}.studio-scene{position:relative;min-height:340px;isolation:isolate}
.studio-orbit{position:absolute;width:290px;height:290px;border:1px solid #d4c6b4;border-radius:50%;top:15px;left:80px;box-shadow:0 0 0 40px #ebdfcf65,0 0 0 41px #ded2c2;z-index:-1}
.studio-brief{position:absolute;top:7px;left:5px;width:65%;min-height:195px;padding:25px;background:#fff;border:1px solid #e4dccc;border-radius:7px;box-shadow:0 20px 40px #6e655417;transform:rotate(-7deg)}.studio-brief>span{font-size:12px;color:#7b817a;display:block}.studio-brief b{font-family:DMSerifDisplay,Georgia,serif;font-size:29px;font-weight:400;display:block;line-height:1.1;margin-top:16px}.studio-brief-line{height:1px;background:#dce3df;margin:19px 0 14px}.studio-brief small{font-size:12px;color:#6e7d78;display:block;line-height:1.5}
.studio-message{position:absolute;right:0;top:144px;width:76%;padding:24px;background:linear-gradient(135deg,#ffffffd9,#ffffff8c);backdrop-filter:blur(10px);border:1px solid #fff;border-radius:19px;box-shadow:0 15px 35px #74675018,inset 0 1px 3px #fff;transform:rotate(3deg)}.studio-message>div{display:flex;align-items:center;gap:12px}.studio-message img{width:43px;height:43px;border-radius:50%;object-fit:cover}.studio-message b{font-size:14px;display:block;font-weight:550}.studio-message small{font-size:12px;display:block;margin-top:4px;color:#748278}.studio-message p{font-size:19px;line-height:1.5;color:#244b60;margin:19px 0 0}.studio-outcome{position:absolute;bottom:-12px;right:15px;font-size:12px;color:#6d7e76;border-bottom:1px solid #b7c8be;padding:8px 0}
.studio-bottom{display:flex;justify-content:space-between;gap:25px;padding:24px 35px;color:#769084;font-size:14px}.studio-bottom span{position:relative}.studio-bottom span+span:before{content:'+';position:absolute;left:-75px;color:#85a794;font-size:18px;top:-3px}
.agency-studio[data-active="1"] .studio-theatre{background:#e8f1ee;border-color:#dce8e1}.studio-client-panel .studio-orbit{border-color:#bad6c9;box-shadow:0 0 0 40px #dcebe480,0 0 0 41px #c9e0d5}
.studio-panel.is-switching .studio-brief{animation:brief-arrive .65s cubic-bezier(.2,.8,.2,1) both}.studio-panel.is-switching .studio-message{animation:message-arrive .65s .1s cubic-bezier(.2,.8,.2,1) both}@keyframes brief-arrive{from{opacity:0;transform:translate(-25px,20px) rotate(-12deg)}to{opacity:1;transform:rotate(-7deg)}}@keyframes message-arrive{from{opacity:0;transform:translate(25px,25px) rotate(8deg)}to{opacity:1;transform:rotate(3deg)}}
.reveal-ready .studio-theatre{opacity:0;transform:translateY(35px)}.reveal-ready.is-revealed .studio-theatre{opacity:1;transform:none;transition:transform .75s cubic-bezier(.2,.8,.2,1),opacity .55s}
.audience-page .route-copy h3{font-size:32px}.audience-page .agency-work{gap:60px}.audience-page .aud-hero{gap:55px}
@media(max-width:1200px){.sector-explorer,.agency-studio{margin-left:40px;margin-right:40px}.studio-panel{gap:25px;padding:38px 30px}.network-a{left:2%}.network-b{right:0}.network-opportunity{width:240px}.sector-panel{gap:35px}.sector-connection{grid-template-columns:.7fr 35px 1.3fr}.sector-destination{padding:24px 18px}}
@media(max-width:850px){.network-canvas{height:445px}.network-a{left:0;top:0}.network-b{right:0;top:70px}.network-c{left:0;bottom:60px}.network-opportunity{right:0;bottom:0;width:220px}.network-core{width:125px;height:125px}.sector-top{display:block}.sector-top p{max-width:none;margin-top:16px}.sector-panel{grid-template-columns:1fr;padding:35px 0;gap:35px}.sector-statement{display:grid;grid-template-columns:1fr 1fr;gap:15px 30px;align-items:start}.sector-statement h3{grid-row:span 2;max-width:none}.sector-statement p{max-width:none;margin:0}.sector-statement .button{justify-self:start}.sector-connection{grid-template-columns:1fr 80px 1.4fr}.studio-panel{grid-template-columns:1fr;gap:30px;padding:35px}.studio-copy{display:grid;grid-template-columns:1fr 1fr;gap:15px 30px}.studio-copy h3{grid-row:span 2;margin:0}.studio-copy p{margin:0}.studio-copy .button{justify-self:start}.studio-scene{width:100%;max-width:550px;margin:auto;min-height:370px}.studio-outcome{bottom:0}.studio-bottom span+span:before{display:none}}
@media(max-width:600px){.network-section{padding:40px 24px 25px}.network-intro p{font-size:16px}.network-canvas{height:470px;margin-top:25px}.network-rings{width:210px;height:210px;box-shadow:0 0 0 38px #f3f8fb,0 0 0 39px #e1edf4}.network-lines{display:none}.network-core{width:115px;height:115px;top:48%}.network-core img{width:40px;height:40px}.network-core b{font-size:14px}.network-core span{font-size:11px}.network-person{padding:10px;gap:9px}.network-person img{width:35px;height:35px}.network-person b{font-size:14px}.network-person span{font-size:11px;margin-top:4px}.network-a{top:0;left:0}.network-b{top:91px;right:0}.network-c{bottom:96px;left:0}.network-opportunity{bottom:0;right:0;width:225px;padding:15px 18px}.network-opportunity b{font-size:18px;margin:7px 0}.network-caption{font-size:12px!important;line-height:1.5!important}.sector-explorer{margin:40px 24px 45px;padding-top:30px}.sector-switch{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#9dbdce transparent}.sector-switch button{flex:0 0 auto;white-space:nowrap;padding:16px 13px;min-height:54px;font-size:13px}.sector-statement{display:block}.sector-statement h3{font-size:31px;margin-bottom:16px}.sector-statement p{margin-bottom:22px}.sector-panel{gap:35px}.sector-connection{grid-template-columns:1fr;gap:0}.sector-offer{display:flex;gap:20px;align-items:center;padding:0 12px}.sector-offer span{margin:0;min-width:75px}.sector-offer strong{font-size:25px}.sector-wire{width:1px;height:37px;margin-left:48px}.sector-wire:after{top:auto;bottom:0;right:-3px}.sector-wire span{top:12px;left:12px}.sector-destination{margin-left:25px;padding:22px 25px}.sector-destination>strong{font-size:31px}.sector-contact{margin-top:18px;padding-top:15px}.sector-footnote{font-size:11px!important;line-height:1.5!important}.agency-studio{margin:35px 15px 35px}.studio-heading{padding:0 9px;text-align:left}.studio-heading p{font-size:16px}.studio-switch{gap:25px;margin-bottom:22px;justify-content:flex-start;padding-left:9px}.studio-switch button{font-size:14px}.studio-theatre{border-radius:24px}.studio-panel{padding:29px 23px 20px;gap:32px}.studio-copy{display:block}.studio-copy h3{font-size:32px;margin-bottom:17px}.studio-copy p{font-size:16px;margin-bottom:23px}.studio-scene{min-height:375px}.studio-orbit{width:210px;height:210px;top:45px;left:30px;box-shadow:0 0 0 25px #ebdfcf65,0 0 0 26px #ded2c2}.studio-brief{width:83%;left:0;padding:22px;top:8px}.studio-brief b{font-size:26px}.studio-message{width:94%;right:-5px;top:172px;padding:19px}.studio-message p{font-size:17px}.studio-outcome{right:0;bottom:0;font-size:11px}.studio-bottom{font-size:11px;gap:12px;padding:18px 8px;line-height:1.5}.studio-bottom span{flex:1}.studio-client-panel .studio-orbit{box-shadow:0 0 0 25px #dcebe480,0 0 0 26px #c9e0d5}.audience-page .aud-hero{gap:35px}}
@media(prefers-reduced-motion:reduce){.reveal-ready .network-person,.reveal-ready .network-opportunity,.reveal-ready .studio-theatre{opacity:1;translate:none;transform:none}.reveal-ready .network-lines path{stroke-dashoffset:0}.network-section *,.agency-studio *,.sector-explorer *{animation:none!important;transition:none!important}}
.network-canvas{overflow:clip}.network-intro,.network-caption{position:relative;z-index:2}
@media(max-width:600px){.network-canvas{height:540px}.network-c{bottom:150px}.sector-switch{overflow-y:hidden}}
