/* References v1. Shared header/footer/privacy are intentionally not restyled. */
.ref-hero{position:relative;isolation:isolate;overflow:hidden;height:calc(100svh - var(--header-h));min-height:560px;background:#087e51;color:#fff}
.ref-backdrop{position:absolute;inset:0;z-index:-2;pointer-events:none}
.ref-backdrop img{position:absolute;right:max(0px,calc((100vw - 2000px)/2));top:50%;transform:translateY(-50%);width:min(100%,1672px);height:100%;object-fit:cover;object-position:right center;mask-image:linear-gradient(90deg,transparent,#000 28%,#000 82%,transparent);opacity:.8}
.ref-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#087e51,transparent 28%),linear-gradient(90deg,#087e51 5%,#087e51eb 29%,#087e5166 55%,transparent 86%),linear-gradient(0deg,#087e5138,transparent 30%)}
.ref-hero-content{position:relative;z-index:3;width:calc(86 * var(--hero-u));max-width:none;margin:auto;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:30px 0 50px;pointer-events:none}
.ref-hero-copy{width:48%;max-width:740px}.ref-hero-copy h1{font-family:Inter,Arial,sans-serif;font-size:calc(4.03 * var(--hero-u));font-weight:600;line-height:1.06;letter-spacing:-.045em;text-wrap:balance;max-width:700px}.ref-hero-copy h1 span{color:#c9f2cf;display:block}
.ref-hero-copy p{font-size:clamp(17px,calc(1.22 * var(--hero-u)),24px);line-height:1.55;max-width:550px;margin-top:28px;color:#edf9ef}
.ref-hero-copy .primary-button{pointer-events:auto;min-height:66px;min-width:285px;padding:16px 26px;border-radius:18px;gap:40px;font-size:20px;margin-top:30px;justify-content:space-between}
.ref-hero-copy .primary-button:focus-visible{outline-color:#fff}
.ref-partners{display:flex;align-items:center;justify-content:center;gap:24px;background:#fbfefb;border:1px solid #ffffff9c;border-radius:18px;padding:10px 20px;height:120px;max-width:100%;margin-top:32px}
.ref-partners img{height:100%;width:auto}.ref-partners img.meta{height:73%}
.ref-stage{position:absolute;z-index:1;pointer-events:none;width:calc(51 * var(--hero-u));aspect-ratio:5/4;right:max(-20px,calc((100vw - 1840px)/2));top:50%;transform:translateY(-48%)}
.ref-stage-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.ref-exhibit{position:absolute;width:25%;height:22%;animation:ref-arrive 1s cubic-bezier(.22,.7,.25,1) both}
.ref-exhibit--1{left:42%;top:31%;width:31%;height:25%;z-index:3;animation-delay:.1s}
.ref-exhibit--2{left:68%;top:9%;z-index:2;animation-delay:.24s}
.ref-exhibit--3{left:11%;top:46%;z-index:4;animation-delay:.38s}
.ref-exhibit--4{left:70%;top:62%;width:23%;height:23%;z-index:5;animation-delay:.52s}
.ref-exhibit--5{left:23%;top:7%;width:23%;height:24%;z-index:2;animation-delay:.18s}
.ref-exhibit-shadow{position:absolute;left:-8%;right:-8%;bottom:-20%;height:28%;border-radius:50%;background:#003624;filter:blur(15px);opacity:.4}
.ref-exhibit-plinth{position:absolute;width:114%;height:27%;bottom:-13%;left:-7%;border-radius:50%;background:linear-gradient(115deg,#64bb83,#147847 45%,#06533e);box-shadow:0 10px 0 #08533d,0 16px 22px #00382340;border-top:4px solid #b9e6af}
.ref-exhibit-card{position:absolute;inset:0;display:grid;place-items:center;border-radius:24px;background:linear-gradient(125deg,#fff 0%,#f0f9ed 58%,#d4ebd8 100%);border:1px solid #def2d9;box-shadow:5px 8px 0 #7bb18a,9px 15px 0 #246849,12px 24px 35px #00352250;overflow:hidden}
.ref-exhibit-card:before{content:'';position:absolute;inset:8px;border:1px solid #c7ddca;border-radius:18px;opacity:.6;pointer-events:none}
.ref-exhibit img{width:86%;height:86%;object-fit:contain;mix-blend-mode:multiply;position:relative;z-index:1}
.ref-exhibit--5 img{width:78%;height:auto;max-width:200px}
.ref-exhibit-glint{position:absolute;inset:-100% -40%;background:linear-gradient(100deg,transparent 40%,#ffffff8c 48%,transparent 56%);transform:translateX(-100%) rotate(-12deg);animation:ref-glint 14s ease-in-out infinite;z-index:2;pointer-events:none}
.ref-exhibit--2 .ref-exhibit-glint{animation-delay:-10s}.ref-exhibit--3 .ref-exhibit-glint{animation-delay:-7s}.ref-exhibit--4 .ref-exhibit-glint{animation-delay:-4s}.ref-exhibit--5 .ref-exhibit-glint{animation-delay:-12s}
.ref-travelling-light{stroke-dasharray:7 93;animation:ref-signal 12s linear infinite}.ref-light-secondary{animation-duration:16s;animation-delay:-6s}
.ref-leaf{transform-origin:0 0;animation:ref-leaf 8s ease-in-out infinite alternate}.ref-leaf-b{animation-duration:10s;animation-delay:-3s}.ref-leaf-c{animation-duration:9s;animation-delay:-5s}
@keyframes ref-arrive{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}
@keyframes ref-glint{0%,62%{transform:translateX(-100%) rotate(-12deg)}90%,100%{transform:translateX(100%) rotate(-12deg)}}
@keyframes ref-signal{to{stroke-dashoffset:-100}}
@keyframes ref-leaf{from{rotate:-3deg}to{rotate:3deg}}

.ref-stories .section-heading{margin-bottom:64px}.ref-stories .section-heading h2{max-width:750px}
.ref-story{display:grid;grid-template-columns:1fr 1fr;gap:clamp(38px,6vw,110px);align-items:center;padding:0 0 78px;margin-bottom:78px;border-bottom:1px solid var(--line)}
.ref-story:last-of-type{margin-bottom:22px;padding-bottom:0;border:0}
.ref-video{border-radius:28px;aspect-ratio:1/1;min-height:0;isolation:isolate;box-shadow:0 18px 44px #0b362811}
.ref-video>img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.ref-video:hover>img{transform:scale(1.025)}.ref-video .play-disc{width:78px;height:78px;background:#f0fff4eb;border:1px solid #fff;color:#075b3e;box-shadow:0 8px 30px #003c3233}
.ref-video .play-disc svg{fill:#075b3e;width:26px;height:26px;stroke:none}.ref-video .video-caption{left:0;right:0;bottom:0;padding:28px;background:linear-gradient(0deg,#003826e8,transparent);min-height:130px;align-items:end}.ref-video .video-caption strong{font-size:21px}.ref-video .video-caption small{font-size:14px;margin-top:5px}.ref-video .video-play-label{font-size:13px;background:#ffffff1a;border:1px solid #ffffff5c;border-radius:999px;padding:8px 13px;white-space:nowrap}.ref-video .video-tag{left:26px;top:26px;background:#fff;color:#175a42;border:none;font-size:10px;letter-spacing:.12em}
.ref-story-copy{padding-block:10px}.ref-story-brand{display:flex;gap:28px;align-items:center;margin-bottom:32px}.ref-story-brand>img{width:64px;height:64px;object-fit:contain}.ref-story-brand>img.ref-sun-logo{width:138px;height:64px}.ref-story-brand>span{font-size:10px;letter-spacing:.12em;color:#5b7265}
.ref-story-copy h3{font-size:clamp(34px,2.75vw,48px);line-height:1.1}.ref-story-copy>p{color:var(--muted);font-size:17px;line-height:1.8;margin-top:24px;max-width:540px}
.ref-story-detail{background:#f0f8f4;border:1px solid #dfece3;border-radius:20px;padding:22px 26px;margin:28px 0;display:grid;grid-template-columns:1fr auto;column-gap:24px;align-items:center;max-width:430px}.ref-story-detail>span{font-size:13px;color:#587362}.ref-story-detail strong{font-family:Vastago,Inter,sans-serif;font-size:44px;line-height:1;grid-row:span 2;color:#0a6e48}.ref-story-detail p{font-size:12px;color:#587362;margin-top:4px}
.ref-story-note{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);padding:24px 0;margin-top:28px;color:#277550}.ref-story-note svg{width:46px;height:46px;fill:#99c4a7;flex-shrink:0}.ref-story-note p{font-size:17px;line-height:1.5}.ref-story-copy>.text-link{font-size:14px;gap:24px}
.ref-story--reverse .ref-video{grid-column:2;grid-row:1}.ref-story--reverse .ref-story-copy{grid-column:1;grid-row:1}.ref-stories .video-privacy-note{margin-top:26px;text-align:right}
.ref-clients{background:#f0f8f4;border-block:1px solid #e6efe8}.ref-logo-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid #d2e2d7;border-left:1px solid #d2e2d7;border-radius:22px;overflow:hidden;background:#fbfdfb}
.ref-logo-grid>li{height:133px;display:grid;place-items:center;overflow:hidden;border-right:1px solid #d2e2d7;border-bottom:1px solid #d2e2d7;padding:18px 24px;position:relative}
.ref-logo-grid img{width:calc(100% * var(--logo-scale,1));height:100%;max-width:190px;max-height:90px;object-fit:contain;filter:grayscale(1) contrast(1.1);mix-blend-mode:multiply;opacity:.84;transition:opacity .2s}
.ref-logo-grid>li:hover img{opacity:1}
.ref-approach{background:#fff}.ref-methods{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-top:15px}
.ref-methods article{position:relative;z-index:1;border:1px solid #dceade;border-radius:24px;padding:34px;background:linear-gradient(145deg,#fff,#f3f9f5)}
.ref-step{position:absolute;right:28px;top:30px;color:#739680;font-size:12px;letter-spacing:.12em}.ref-method-icon{display:grid;place-items:center;width:66px;height:66px;border-radius:20px;background:#e7f4eb;margin-bottom:34px}.ref-method-icon svg{width:42px;height:42px;fill:none;stroke:#26784f;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.ref-methods h3{font-size:27px}.ref-methods p{font-size:15px;color:var(--muted);line-height:1.8;margin-top:18px;max-width:345px}
.ref-method-track{position:absolute;inset:49px 5% auto;height:2px;background:#d0e8d8;overflow:hidden}.ref-method-track span{display:block;width:12%;height:100%;background:#168353;animation:ref-method-flow 12s ease-in-out infinite}.ref-check-stroke{stroke-dasharray:22;animation:ref-check 9s ease-in-out infinite}
@keyframes ref-method-flow{from{transform:translateX(-150%)}to{transform:translateX(1000%)}}
@keyframes ref-check{0%,20%{stroke-dashoffset:22}45%,100%{stroke-dashoffset:0}}
.references-page .contact-section{border-radius:40px 40px 0 0}
.ref-contact-art{width:440px;max-width:100%;margin-top:32px;opacity:.9}.ref-contact-art svg{width:100%;height:auto;overflow:visible}
.motion-idle [data-motion-scene] *,.no-motion *{animation-play-state:paused!important}
@media(min-width:701px) and (max-height:760px){.ref-hero{min-height:520px}.ref-hero-content{padding-block:20px}.ref-hero-copy p{font-size:17px;margin-top:20px}.ref-hero-copy .primary-button{min-height:54px;min-width:240px;font-size:17px;margin-top:20px}.ref-partners{height:88px;margin-top:22px;border-radius:14px;padding:8px 16px}.ref-stage{width:calc(49 * var(--hero-u))}}
@media(max-width:1100px) and (min-width:701px){.ref-hero-copy{width:49%}.ref-hero-copy h1{font-size:clamp(38px,4.2vw,60px)}.ref-hero-copy p{font-size:17px}.ref-partners{height:95px}.ref-stage{right:-30px;width:53vw}.ref-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ref-methods{gap:18px}.ref-methods article{padding:26px}.ref-methods h3{font-size:24px}.ref-video .video-caption{padding:20px}.ref-video .video-caption strong{font-size:17px}.ref-video .video-play-label{display:none}}
@media(max-width:700px){
 .ref-hero{height:calc(100svh - var(--header-h));min-height:660px}.ref-hero-content{width:calc(100% - 40px);padding:30px 0 22px;justify-content:flex-start;pointer-events:none}.ref-hero-copy{width:100%;max-width:520px}.ref-hero-copy h1{font-size:clamp(34px,8.8vw,48px);line-height:1.04;max-width:400px;letter-spacing:-.042em;text-wrap:initial}.ref-hero-copy h1 span{display:block}.ref-hero-copy p{font-size:15px;line-height:1.6;margin-top:18px;max-width:350px}.ref-hero-copy .primary-button{min-height:52px;min-width:236px;padding:13px 20px;border-radius:15px;font-size:16px;margin-top:20px;gap:32px}.ref-hero-copy .primary-button .icon{width:20px;height:20px}
 .ref-partners{margin-top:auto;height:94px;padding:9px 18px;gap:24px;border-radius:17px;align-self:stretch;width:100%;max-width:380px;box-shadow:0 8px 30px #003c2826}.ref-partners img.meta{height:76%}
 .ref-backdrop img{width:100%;max-width:none;object-position:65% bottom;mask-image:none;opacity:.7}.ref-backdrop:after{background:linear-gradient(180deg,#087e51 5%,#087e51ec 22%,#087e5180 48%,transparent 76%,#087e5170)}
 .ref-stage{width:430px;max-width:100%;right:50%;top:auto;bottom:113px;transform:translateX(50%);aspect-ratio:5/3.7;z-index:1}.ref-stage-lines{height:108%;top:-6%}
 .ref-exhibit-card{border-radius:14px;box-shadow:3px 5px 0 #7bb18a,5px 8px 0 #246849,8px 14px 25px #00352250}.ref-exhibit-card:before{inset:5px;border-radius:10px}.ref-exhibit-plinth{border-top-width:2px;box-shadow:0 6px 0 #08533d,0 10px 15px #00382340}.ref-exhibit-shadow{filter:blur(10px)}
 .ref-exhibit--1{left:34%;top:32%;width:33%;height:23%}.ref-exhibit--2{left:68%;top:13%;width:26%;height:20%}.ref-exhibit--3{left:9%;top:58%;width:25%;height:21%}.ref-exhibit--4{left:69%;top:64%;width:24%;height:22%}.ref-exhibit--5{left:8%;top:12%;width:24%;height:24%}
 .ref-stories .section-heading{margin-bottom:32px}.ref-story{grid-template-columns:1fr;gap:28px;padding-bottom:45px;margin-bottom:45px}.ref-story--reverse .ref-video,.ref-story--reverse .ref-story-copy{grid-column:auto;grid-row:auto}.ref-video{border-radius:22px;aspect-ratio:1.04}.ref-video .play-disc{width:64px;height:64px}.ref-video .video-tag{top:20px;left:20px;font-size:9px}.ref-video .video-caption{padding:22px;min-height:120px}.ref-video .video-caption strong{font-size:18px}.ref-video .video-caption small{font-size:12px}.ref-video .video-play-label{display:none}.ref-story-copy{padding:0 3px}.ref-story-brand{margin-bottom:20px;gap:20px}.ref-story-brand>img{width:50px;height:50px}.ref-story-brand>img.ref-sun-logo{width:130px;height:50px}.ref-story-brand>span{font-size:9px;letter-spacing:.08em}.ref-story-copy h3{font-size:34px}.ref-story-copy>p{font-size:15px;line-height:1.8;margin-top:18px}.ref-story-detail{margin:22px 0;padding:18px 20px;border-radius:17px}.ref-story-detail strong{font-size:38px}.ref-story-note{padding:20px 0;margin-top:20px}.ref-story-note p{font-size:16px}.ref-story-copy>.text-link{font-size:13px;gap:12px}.ref-stories .video-privacy-note{text-align:left}
 .ref-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));border-radius:18px}.ref-logo-grid>li{height:88px;padding:10px 12px}.ref-logo-grid img{max-height:66px;max-width:100%}
 .ref-methods{grid-template-columns:1fr;gap:16px;padding:0}.ref-methods article{padding:26px 26px 26px 94px;min-height:164px;border-radius:21px}.ref-method-icon{position:absolute;left:22px;top:26px;width:54px;height:54px;border-radius:16px}.ref-method-icon svg{width:35px;height:35px}.ref-methods h3{font-size:25px;max-width:245px}.ref-methods p{font-size:14px;margin-top:12px;line-height:1.7}.ref-step{position:static;display:block;font-size:10px;margin-bottom:12px}.ref-method-track{top:4%;bottom:4%;left:49px;right:auto;width:2px;height:auto}.ref-method-track span{width:100%;height:12%;animation-name:ref-method-flow-y}.references-page .contact-section{border-radius:28px 28px 0 0}.ref-contact-art{width:340px;margin:10px auto 0}
}
@keyframes ref-method-flow-y{from{transform:translateY(-150%)}to{transform:translateY(1000%)}}
@media(max-width:700px) and (max-height:740px) and (orientation:portrait){.ref-hero{min-height:480px}.ref-hero-content{padding-top:18px;padding-bottom:16px}.ref-hero-copy h1{font-size:clamp(30px,8.4vw,35px)}.ref-hero-copy p{font-size:14px;line-height:1.45;margin-top:12px}.ref-hero-copy .primary-button{margin-top:14px;min-height:46px;padding-block:10px;font-size:15px}.ref-partners{height:76px;padding:7px 17px;border-radius:15px;gap:22px}.ref-stage{width:390px;max-width:100%;aspect-ratio:5/2.55;bottom:93px}.ref-stage-lines{top:-16%;height:130%}.ref-exhibit-card{border-radius:11px}.ref-exhibit-card:before{inset:4px;border-radius:8px}}
@media(max-width:360px){.ref-hero{min-height:650px}.ref-hero-content{width:calc(100% - 32px);padding-top:24px}.ref-hero-copy h1{font-size:32px}.ref-hero-copy p{font-size:14px;line-height:1.5}.ref-partners{height:84px;gap:20px}.ref-stage{bottom:93px;width:370px}.ref-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ref-story-copy h3{font-size:31px}.ref-methods article{padding-left:80px}.ref-method-icon{left:18px;width:46px;height:46px}.ref-methods h3{font-size:23px}}
@media(max-width:360px) and (max-height:740px) and (orientation:portrait){.ref-hero{min-height:480px}.ref-hero-content{padding-top:18px}.ref-hero-copy h1{font-size:30px}.ref-hero-copy p{line-height:1.45}.ref-partners{height:76px}}
@media(max-width:900px) and (orientation:landscape) and (max-height:520px){.ref-hero{height:auto;min-height:490px}.ref-hero-content{padding-block:26px;min-height:490px}.ref-hero-copy{width:52%}.ref-hero-copy h1{font-size:40px}.ref-hero-copy p{font-size:16px}.ref-partners{height:85px;margin-top:22px}.ref-stage{width:450px;max-width:53vw;right:-15px;top:50%;bottom:auto;transform:translateY(-50%)} }
@media(prefers-reduced-motion:reduce){.ref-hero *,.ref-methods *,.ref-contact-art *{animation:none!important;transition:none!important}.ref-exhibit{opacity:1;translate:none}.ref-video:hover>img{transform:none}.ref-travelling-light{stroke-dasharray:none;opacity:.3}}
