:root{--ink:#110b1d;--muted:#635d6e;--violet:#5222f5;--violet2:#7b4dff;--coral:#ff6c69;--yellow:#ffbd2e;--night:#16072e;--gold:#cba161;--line:#e9e5ed;--paper:#fff;--soft:#faf8fc;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;padding:.75rem 1rem;background:#fff;border:1px solid var(--violet)}.skip-link:focus{top:1rem}.section-pad{padding-left:max(5.2vw,32px);padding-right:max(5.2vw,32px)}
.site-header{height:96px;display:grid;grid-template-columns:260px 1fr 260px;align-items:center;padding:0 max(3.2vw,28px);position:relative;z-index:20;background:#fff}.brand img{width:190px;height:auto}.desktop-nav{display:flex;justify-content:center;gap:3.2rem;font-weight:500}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--violet);transition:.25s}.desktop-nav a:hover:after{right:0}.header-cta{justify-self:end}.button{display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:56px;padding:0 27px;border-radius:7px;font-weight:600;transition:transform .25s,box-shadow .25s,background .25s}.button:hover{transform:translateY(-3px)}.button-primary{color:#fff;background:linear-gradient(135deg,var(--violet),#3d04e8);box-shadow:0 13px 30px rgba(82,34,245,.2)}.button-outline{border:1px solid var(--violet);color:var(--violet);background:#fff}.menu-toggle,.mobile-nav{display:none}
.hero{min-height:755px;display:grid;grid-template-columns:minmax(430px,.8fr) minmax(650px,1.2fr);align-items:center;gap:2vw;padding-top:25px;padding-bottom:65px}.hero-copy{position:relative;z-index:3}.hero h1,.journey-title h2,.company h2,.qatar h2{font-family:var(--serif);font-weight:600;letter-spacing:-.047em}.hero h1{font-size:clamp(64px,6vw,104px);line-height:.9;margin:0 0 35px}.hero h1 em{color:var(--violet);font-style:normal}.hero-copy>p{max-width:610px;font-size:19px;line-height:1.58;margin:0 0 34px}.button-row{display:flex;gap:18px}.coordinate{display:block;margin:30px 0 0 42%;font-size:12px;color:var(--violet);letter-spacing:.05em}.coordinate:before{content:"+";font-size:30px;color:#999;margin-right:14px;font-weight:300}
.hero-product{position:relative;height:650px;isolation:isolate}.doha-map-art{position:absolute;inset:-5% -3% -3% -8%;width:112%;height:108%;z-index:-2}.doha-map-art .topo path{fill:none;stroke:#dcd2ff;stroke-width:1}.doha-map-art .grid path{fill:none;stroke:#e7e2eb;stroke-width:1;stroke-dasharray:3 4}.doha-map-art .city-route{fill:none;stroke:var(--violet);stroke-width:3.5;stroke-dasharray:8 8}.doha-map-art .map-stop circle{fill:#fff;stroke:var(--violet);stroke-width:4}.real-phone{position:absolute;z-index:3;left:43%;top:12px;width:306px;padding:10px;border:4px solid #17151a;border-radius:48px;background:#08070a;box-shadow:0 30px 70px rgba(21,8,55,.2);transform:translateY(var(--parallax-y,0))}.real-phone:before{content:"";position:absolute;top:14px;left:50%;width:82px;height:22px;transform:translateX(-50%);background:#08070a;border-radius:20px;z-index:3}.real-phone img{width:100%;aspect-ratio:941/1672;object-fit:cover;border-radius:35px}.floating-card{position:absolute;z-index:4;background:rgba(255,255,255,.97);border:1px solid #ece8ef;border-radius:22px;box-shadow:0 25px 55px rgba(22,7,46,.12);transform:translateY(var(--parallax-y,0))}.quest-card{left:3%;top:255px;width:248px;padding:27px}.eyebrow,.medal-card>span{font-size:10px;letter-spacing:.15em;color:var(--violet);font-weight:700}.quest-card strong{display:block;font-family:var(--serif);font-size:25px;margin:10px 0}.quest-card p{font-size:14px;line-height:1.45;color:var(--muted)}.xp-chip{margin-top:20px;padding:16px 18px;background:linear-gradient(135deg,#ffd755,#ffb918);border-radius:12px;font-size:20px;font-weight:700}.medal-card{right:0;top:185px;width:190px;padding:17px;text-align:center}.medal-card img{width:105px;height:105px;object-fit:cover;border-radius:50%;margin:-48px auto 7px;box-shadow:0 10px 22px rgba(140,88,20,.18)}.medal-card strong{display:block;font-family:var(--serif);font-size:25px;margin:5px}.medal-card p{font-size:12px;color:var(--muted);margin:0 0 7px}.progress-card{position:absolute;right:-2%;bottom:48px;z-index:4;width:240px;padding:19px 22px;color:#fff;background:linear-gradient(135deg,#2a0d52,#150724);border-radius:16px;box-shadow:0 22px 45px rgba(22,7,46,.25);transform:translateY(var(--parallax-y,0))}.progress-card span,.progress-card small{display:block;font-size:11px}.progress-card strong{display:block;font-family:var(--serif);font-size:34px;margin:3px 0}.progress-card i{display:block;height:8px;border-radius:8px;background:#442a62;margin:4px 0 9px}.progress-card i b{display:block;width:75%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--violet2),#c1a9ff)}
.audiences{display:grid;grid-template-columns:310px 1fr;gap:4rem;align-items:center;min-height:230px;background:linear-gradient(180deg,#fcfbfd,#f7f5f9);border-top:1px solid #f0edf2;border-bottom:1px solid #e5e1e8}.audiences h2{font:600 39px/1.05 var(--serif);margin:0}.audience-list{display:grid;grid-template-columns:repeat(3,1fr)}.audience-list article{min-height:135px;padding:12px 35px;border-left:1px solid #dcd8df;display:grid;grid-template-columns:60px 1fr;align-content:center;column-gap:18px}.audience-icon{grid-row:1/3;width:54px}.audience-icon svg{fill:none;stroke:var(--violet);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.audience-list h3{font-size:17px;margin:5px 0}.audience-list p{font-size:13px;line-height:1.55;color:var(--muted);margin:0}
.journey-section{position:relative;min-height:670px;padding-top:75px;overflow:hidden}.journey-title{position:relative;z-index:2}.journey-title:before{content:"FROM CURIOSITY TO PARTICIPATION";display:block;color:var(--violet);font-size:12px;font-weight:700;letter-spacing:.12em;margin-bottom:14px}.journey-title h2{font-size:clamp(56px,5.3vw,88px);line-height:.93;margin:0}.journey-title em{font-style:normal}.violet{color:var(--violet)}.coral{color:var(--coral)}.yellow{color:var(--yellow)}.journey-path{position:absolute;left:max(4vw,26px);right:max(4vw,26px);bottom:22px;height:355px}.journey-map{position:absolute;inset:25px 0 0;width:100%;height:310px}.street-plan path{fill:none;stroke:#eeeaf5;stroke-width:2}.route-line{fill:none;stroke:var(--violet);stroke-width:4;stroke-linecap:round;stroke-dasharray:9 8}.route-points circle{fill:#fff;stroke:var(--violet);stroke-width:4}.doha-sketch,.camera-marker,.finish-flag{fill:#fff;stroke:#24153f;stroke-width:2;stroke-linejoin:round}.camera-marker{stroke:var(--violet)}.finish-flag{fill:#ff6367}.journey-path article{position:absolute;z-index:2;width:235px;padding-left:82px}.journey-path article:nth-of-type(1){left:18%;top:84px}.journey-path article:nth-of-type(2){left:48%;top:34px}.journey-path article:nth-of-type(3){right:7%;top:8px}.journey-path article>span{position:absolute;left:0;top:0;width:66px;height:66px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#873cff,#4216e9);font:600 27px var(--serif);box-shadow:0 11px 25px rgba(82,34,245,.22)}.journey-path article>span:after{content:"";position:absolute;top:68px;height:45px;border-left:2px dashed #8d6cff}.journey-path h3{margin:5px 0;font-size:18px}.journey-path p{font-size:14px;line-height:1.5;margin:0;color:#393243}
.technology{position:relative;min-height:385px;color:#fff;background:radial-gradient(circle at 75% 0,#301060 0,transparent 35%),var(--night);display:grid;grid-template-columns:300px 1fr;gap:2rem;align-items:center;overflow:hidden}.technology:after,.technology:before{content:"";position:absolute;width:370px;height:280px;border:1px solid #452377;border-radius:47% 53% 63% 37%;opacity:.45}.technology:before{left:-190px;bottom:-150px;box-shadow:0 0 0 28px #1a0834,0 0 0 29px #452377,0 0 0 58px #1a0834,0 0 0 59px #452377}.technology:after{right:-220px;top:-140px;box-shadow:0 0 0 28px #1a0834,0 0 0 29px #452377,0 0 0 58px #1a0834,0 0 0 59px #452377}.tech-heading{position:relative;z-index:2}.tech-heading span{font-size:12px;letter-spacing:.15em;color:var(--violet2);font-weight:700}.tech-heading h2{font:600 52px/1.02 var(--serif);margin:25px 0 0}.tech-heading h2:after{content:"";display:block;width:150px;height:8px;margin-top:25px;background:var(--violet);border-radius:50%;transform:rotate(-4deg)}.tech-list{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr)}.tech-list article{min-height:240px;padding:5px 28px;border-left:1px solid rgba(255,255,255,.25)}.tech-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#8b50ff,#4b17ee);box-shadow:0 11px 30px rgba(92,38,255,.35)}.tech-icon svg{width:34px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.tech-list h3{font:600 23px/1.05 var(--serif);margin:20px 0 0}.tech-list h3:after{content:"";display:block;width:38px;height:4px;border-radius:3px;background:var(--coral);margin:15px 0}.tech-list p{font-size:12.5px;line-height:1.75;color:#d7cfe5;margin:0}
.cases{padding-top:100px;padding-bottom:110px;background:#f7f4f1}.cases-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:55px}.cases-head h2{font:600 clamp(54px,5vw,80px)/.95 var(--serif);letter-spacing:-.04em;margin:0}.cases-head p{width:390px;font-size:14px;line-height:1.6;color:var(--muted)}.case-gallery{display:grid;grid-template-columns:1.45fr .72fr .72fr;gap:28px;align-items:start}.case-gallery figure{position:relative;margin:0}.case-number{position:absolute;left:0;top:-32px;color:var(--violet);font:600 14px var(--serif)}.case-gallery figcaption{margin-top:18px;display:flex;justify-content:space-between;gap:15px;padding-top:15px;border-top:1px solid #d6d0cb}.case-gallery figcaption b{font:600 18px var(--serif)}.case-gallery figcaption span{max-width:220px;text-align:right;font-size:11px;letter-spacing:.05em;color:var(--muted)}.case-duo{height:570px;display:flex;justify-content:center;gap:24px;padding:30px;background:linear-gradient(135deg,#e9e3ff,#fff 60%);border-radius:70px 10px 70px 10px}.case-duo img,.case-singapore>img{height:100%;width:auto;aspect-ratio:941/1672;object-fit:cover;border:8px solid #17131d;border-radius:35px;box-shadow:0 22px 35px rgba(27,13,45,.16)}.case-singapore>img{width:100%;height:auto;aspect-ratio:9/16}.case-rock .rock-proof-card{aspect-ratio:9/16;background:var(--night);color:#fff;border-radius:8px;padding:30px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.rock-proof-card img{background:#fff;padding:12px;margin-bottom:30px}.rock-proof-card p{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#cbbce3}.rock-proof-card strong{font:600 43px/1.05 var(--serif)}
.crexga{min-height:740px;padding-top:90px;padding-bottom:55px;display:grid;grid-template-columns:1.55fr .85fr;grid-template-rows:1fr auto;gap:50px 6vw;align-items:center;background:#fff}.builder{margin:0;border:1px solid #e1dde5;border-radius:8px;overflow:hidden;box-shadow:0 28px 65px rgba(30,18,46,.12)}.builder img{width:100%}.builder figcaption{display:flex;align-items:center;gap:18px;padding:15px 20px;background:#fff;border-top:1px solid #e5e1e8}.builder figcaption span{color:var(--violet);font-size:10px;font-weight:700;letter-spacing:.13em}.builder figcaption strong{font-size:13px}.crexga-copy>span{color:var(--violet);font-size:13px;font-weight:700;letter-spacing:.28em}.crexga-copy h2{font-size:clamp(56px,5vw,82px);line-height:.87;letter-spacing:-.055em;margin:24px 0 34px}.crexga-copy h2 em{color:var(--violet);font-style:normal}.crexga-copy>p{font-size:22px;line-height:1.4}.crexga-copy .crexga-detail{font-size:13px;color:var(--muted)}.use-cases{grid-column:1/-1;display:grid;grid-template-columns:125px repeat(6,1fr);align-items:center;gap:18px;padding:25px 0 10px;border-top:1px solid var(--line);position:relative}.use-cases:after{content:"";position:absolute;left:125px;right:0;bottom:-10px;border-bottom:2px dashed var(--violet)}.use-cases b{font-size:10px;color:var(--violet);letter-spacing:.15em}.use-cases span{text-align:center;font-size:13px}.use-cases span:after{content:"";display:block;width:10px;height:10px;border:3px solid var(--violet);background:#fff;border-radius:50%;margin:17px auto -21px}
.company{padding-top:95px;padding-bottom:90px;background:#fdfbf8;color:#301b46}.company-head{text-align:center;max-width:850px;margin:0 auto 65px}.company-head h2{font-size:clamp(50px,4.6vw,76px);line-height:.98;margin:0}.company-head p{max-width:610px;margin:24px auto 0;line-height:1.65;color:#675975}.destination-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:36px}.destination-grid:after{content:"";position:absolute;left:5%;right:5%;top:212px;height:1px;background:var(--gold);z-index:0}.destination-grid article{text-align:center;position:relative;z-index:1}.destination-grid figure{height:195px;margin:0 0 32px;padding:10px;background:#fff;border:1px solid #e5d8c7;box-shadow:0 18px 40px rgba(66,42,26,.08);overflow:hidden;clip-path:polygon(7% 0,100% 0,93% 100%,0 100%)}.destination-grid img{width:100%;height:100%;object-fit:cover;object-position:center}.destination-grid article:before{content:"";position:absolute;top:207px;left:50%;width:10px;height:10px;background:var(--gold);transform:translate(-50%,-50%) rotate(45deg)}.destination-grid span{display:block;font:600 25px var(--serif)}.destination-grid p{font-size:13px;line-height:1.55;color:#63566f;margin:8px auto 0;max-width:210px}.proof{max-width:970px;margin:55px auto 0;padding-top:22px;border-top:1px solid var(--gold);display:grid;grid-template-columns:1fr 1fr;gap:10px 40px}.proof p{font-size:13px;line-height:1.5;margin:0}.proof b{display:inline-grid;place-items:center;width:25px;height:25px;margin-right:8px;border:1px solid var(--gold);border-radius:50%;font:600 11px var(--serif);color:#8e6934}
.qatar{min-height:520px;color:#fff;background:radial-gradient(circle at 20% 10%,#48265e,transparent 37%),#251034;display:grid;grid-template-columns:.85fr 1.35fr;gap:6vw;align-items:center;padding-top:55px;padding-bottom:55px;border-bottom:1px solid var(--gold)}.qatar-illustration{position:relative;margin:0;justify-self:center}.qatar-illustration:before{content:"DOHA";position:absolute;left:-115px;bottom:20px;color:transparent;-webkit-text-stroke:1px rgba(203,161,97,.35);font:600 90px var(--serif);letter-spacing:.08em;transform:rotate(-90deg)}.qatar-illustration img{width:220px;aspect-ratio:9/16;object-fit:cover;border:1px solid var(--gold);padding:7px;background:#fff;box-shadow:24px 25px 0 rgba(203,161,97,.13)}.qatar-illustration figcaption{font-size:9px;letter-spacing:.14em;color:var(--gold);margin-top:15px}.qatar-copy h2{font-size:clamp(46px,4vw,67px);line-height:1;margin:0;padding-bottom:22px;border-bottom:1px solid var(--gold)}.qatar-copy>p{max-width:700px;font-size:16px;line-height:1.6}.qatar-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(203,161,97,.45)}.qatar-grid span{font-size:12px;text-align:center;line-height:1.4;padding:22px 14px;border-right:1px solid rgba(203,161,97,.45)}.qatar-grid span:nth-child(3n){border-right:0}.contact-band{min-height:105px;padding:20px max(8vw,45px);background:#251034;color:#fff;display:flex;align-items:center;justify-content:center;gap:70px;border-bottom:1px solid var(--gold)}.contact-band h2{font:600 34px var(--serif)}.contact-band>div{display:flex;gap:15px}.gold-button{min-height:48px;color:#fff;border:1px solid var(--gold);border-radius:0;font-size:13px}footer{padding:28px max(8vw,45px) 35px;background:#1d0c29;color:#fff;text-align:center}.footer-links{display:flex;justify-content:center;gap:0;margin-bottom:26px}.footer-links a{padding:0 48px;border-right:1px solid rgba(203,161,97,.55);font-family:var(--serif)}.footer-links a:last-child{border:0}footer p{font-size:12px;color:#cabfd1}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal[data-reveal=scale]{transform:scale(.97)}.reveal.visible{opacity:1;transform:none}
@media(max-width:1200px){.site-header{grid-template-columns:220px 1fr 180px}.desktop-nav{gap:1.7rem}.hero{grid-template-columns:.8fr 1.2fr}.hero-product{transform:scale(.9);transform-origin:center}.tech-list article{padding:5px 18px}.case-gallery{grid-template-columns:1.3fr .7fr}.case-rock{grid-column:2}.crexga{grid-template-columns:1.3fr .8fr}.footer-links a{padding:0 30px}}
@media(max-width:900px){.section-pad{padding-left:24px;padding-right:24px}.site-header{height:78px;grid-template-columns:1fr auto;padding:0 22px}.brand img{width:160px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:grid;width:44px;height:44px;border:0;background:none;place-content:center;gap:7px}.menu-toggle span{display:block;width:25px;height:2px;background:var(--ink)}.mobile-nav{position:absolute;top:78px;left:0;right:0;padding:20px 24px 28px;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;gap:15px}.mobile-nav.open{display:flex}.hero{display:block;min-height:auto;padding-top:50px}.hero h1{font-size:64px}.hero-product{height:635px;margin-top:25px;transform:none}.real-phone{left:50%;transform:translateX(-50%) translateY(var(--parallax-y,0));width:275px}.quest-card{left:0;top:285px;width:205px}.medal-card{right:0}.progress-card{right:0;bottom:15px}.audiences{display:block;padding-top:45px;padding-bottom:45px}.audiences h2{margin-bottom:35px}.audience-list article{padding:12px 20px}.journey-section{min-height:790px}.journey-title h2{font-size:58px}.journey-path{height:430px}.journey-map{top:115px}.journey-path article:nth-of-type(1){left:8%;top:105px}.journey-path article:nth-of-type(2){left:41%;top:65px}.journey-path article:nth-of-type(3){right:1%;top:25px}.technology{display:block;padding-top:65px;padding-bottom:65px}.tech-heading h2 br{display:none}.tech-list{margin-top:55px;grid-template-columns:1fr 1fr}.tech-list article{padding:25px 30px}.cases-head{display:block}.cases-head p{width:auto}.case-gallery{grid-template-columns:1fr 1fr}.case-wide{grid-column:1/-1}.case-duo{height:520px}.crexga{grid-template-columns:1fr;padding-top:70px}.crexga-copy{grid-row:1}.use-cases{grid-template-columns:repeat(3,1fr)}.use-cases b{grid-column:1/-1}.use-cases:after{display:none}.destination-grid{grid-template-columns:1fr 1fr}.destination-grid:after{display:none}.destination-grid article:before{display:none}.proof{grid-template-columns:1fr}.qatar{grid-template-columns:.7fr 1.3fr}.qatar-grid{grid-template-columns:1fr 1fr}.qatar-grid span:nth-child(3n){border-right:1px solid rgba(203,161,97,.45)}.qatar-grid span:nth-child(2n){border-right:0}.contact-band{display:block;text-align:center}.contact-band>div{justify-content:center}.footer-links{flex-wrap:wrap;row-gap:20px}}
@media(max-width:600px){.hero h1{font-size:49px}.hero-copy>p{font-size:16px}.button-row{align-items:stretch}.button{min-height:50px;padding:0 17px}.coordinate{margin-left:0}.hero-product{height:580px;margin-left:-18px;margin-right:-18px}.doha-map-art{inset:0}.real-phone{width:238px}.quest-card{top:300px;width:155px;padding:17px}.quest-card strong{font-size:19px}.quest-card p{font-size:11px}.xp-chip{font-size:14px;padding:12px}.medal-card{top:160px;width:135px;padding:12px}.medal-card img{width:75px;height:75px}.medal-card strong{font-size:19px}.progress-card{width:178px}.audience-list{grid-template-columns:1fr}.audience-list article{border-left:0;border-top:1px solid #ddd}.journey-section{min-height:890px;padding-top:65px}.journey-title h2{font-size:46px}.journey-path{position:relative;left:auto;right:auto;bottom:auto;height:500px;margin-top:35px}.journey-map{top:170px;height:280px}.journey-path article{width:205px}.journey-path article:nth-of-type(1){left:0;top:0}.journey-path article:nth-of-type(2){left:auto;right:0;top:115px}.journey-path article:nth-of-type(3){left:10%;right:auto;top:250px}.journey-path article>span{width:55px;height:55px;font-size:22px}.journey-path article{padding-left:66px}.technology{padding-left:24px;padding-right:24px}.tech-list{grid-template-columns:1fr}.tech-list article{border-left:0;border-top:1px solid rgba(255,255,255,.2);display:grid;grid-template-columns:72px 1fr;column-gap:15px;min-height:0}.tech-icon{grid-row:1/3}.tech-list h3{margin:5px 0}.tech-list p{grid-column:2}.cases{padding-top:75px}.cases-head h2{font-size:50px}.case-gallery{display:block}.case-gallery figure{margin-bottom:65px}.case-duo{height:410px;gap:10px;padding:18px;border-radius:35px 5px}.case-duo img{border-width:5px;border-radius:23px}.case-singapore>img{max-width:72%;margin:auto}.case-rock .rock-proof-card{max-width:72%;margin:auto}.case-gallery figcaption{display:block}.case-gallery figcaption span{display:block;text-align:left;margin-top:6px}.crexga{display:flex;flex-direction:column;align-items:stretch}.crexga-copy h2{font-size:57px}.crexga-copy>p{font-size:18px}.use-cases{display:grid;grid-template-columns:1fr 1fr}.destination-grid{grid-template-columns:1fr}.destination-grid figure{height:250px}.qatar{grid-template-columns:1fr;padding-top:75px}.qatar-illustration{order:2}.qatar-illustration img{width:190px}.qatar-copy h2{font-size:44px}.qatar-grid{grid-template-columns:1fr 1fr}.contact-band>div{display:block}.contact-band .button{display:flex;margin:10px}.footer-links{display:grid;grid-template-columns:1fr 1fr}.footer-links a{border:0;padding:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button{transition:none}}

/* Precision fixes from desktop and mobile visual QA */
.audience-icon{width:58px;height:58px;display:grid;place-items:center;border:1px solid #ddd5ff;border-radius:50%;background:#fff;box-shadow:0 10px 24px rgba(82,34,245,.08)}
.audience-icon img{width:29px;height:29px;filter:invert(25%) sepia(95%) saturate(5747%) hue-rotate(253deg) brightness(90%) contrast(111%)}
.doha-map-art{inset:3% -1% 2% 4%;width:96%;height:95%;object-fit:cover;object-position:center;opacity:.12;filter:grayscale(1) contrast(.7);border-radius:48% 8% 42% 12%}
.tech-icon img{width:32px;height:32px;filter:brightness(0) invert(1)}
.journey-section{position:relative;min-height:720px;padding-top:70px;padding-bottom:70px;display:grid;grid-template-columns:minmax(420px,.9fr) minmax(560px,1.1fr);align-items:center;gap:6vw;background:#fff}
.journey-path{position:relative;inset:auto;height:570px;display:grid;grid-template-columns:minmax(230px,.78fr) minmax(300px,1fr);align-items:center;gap:45px;padding:34px;background:linear-gradient(145deg,#f4f0ff 0,#fff 58%);border:1px solid #e7e1f0;border-radius:42px;overflow:hidden}
.journey-path:before{content:"";position:absolute;left:44%;top:65px;bottom:65px;width:1px;background:#d9d0e9}
.geo-phone{position:relative;z-index:2;width:min(100%,285px);margin:0 auto;text-align:center}
.geo-phone img{width:100%;aspect-ratio:733/1100;object-fit:cover;object-position:top;border:8px solid #16121d;border-radius:35px;box-shadow:0 24px 48px rgba(26,10,53,.18)}
.geo-phone figcaption{margin-top:14px;color:var(--violet);font-size:9px;font-weight:700;letter-spacing:.14em}
.journey-steps{position:relative;z-index:2;display:grid;gap:38px}
.journey-path .journey-steps article,.journey-path .journey-steps article:nth-of-type(n){position:relative;inset:auto;width:auto;min-height:86px;padding:0;display:grid;grid-template-columns:72px 1fr;align-items:start;gap:18px}
.journey-path .journey-steps article:not(:last-child):after{content:"";position:absolute;left:34px;top:70px;height:55px;border-left:1px solid #b8a6e9}
.journey-path .journey-steps article>span{position:relative;inset:auto;width:68px;height:68px}
.journey-path .journey-steps article>span:after{display:none}
.journey-path .journey-steps h3{font:600 25px var(--serif);margin:3px 0 6px}
.journey-path .journey-steps p{font-size:13px;line-height:1.55;margin:0;max-width:245px}
.case-gallery{align-items:start}
.case-rock .rock-proof-card{justify-content:center;gap:18px}
.scor-logo{position:relative;width:100%;height:135px;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.2)}
.scor-logo img{position:absolute;left:50%;top:46%;width:720px;max-width:none;transform:translate(-50%,-50%);background:transparent;padding:0;margin:0}
.case-rock .rock-proof-card p{margin:6px 0 0}
.cases{padding-bottom:72px}
.crexga{min-height:0;padding-top:72px;padding-bottom:52px;grid-template-rows:auto auto}
.use-cases{padding:22px 0 8px;align-items:start}
.use-cases:after{display:none}
.use-cases span{display:grid;grid-template-rows:42px auto;justify-items:center;gap:8px;line-height:1.25}
.use-cases span img{width:30px;height:30px;filter:invert(25%) sepia(95%) saturate(5747%) hue-rotate(253deg) brightness(90%) contrast(111%)}
.use-cases span:after{display:none}
.company{padding-top:78px}
.destination-grid{align-items:start;gap:28px}
.destination-grid:after{top:128px}
.destination-grid article{padding-top:50px}
.destination-grid article:before{top:123px}
.country-map{position:absolute;top:0;left:50%;width:68px;height:68px;object-fit:contain;transform:translateX(-50%);filter:grayscale(1) sepia(1) saturate(1.8);opacity:.52}
.destination-grid figure{width:min(100%,230px);height:auto;aspect-ratio:9/16;margin:40px auto 28px;padding:7px;border-radius:32px;clip-path:none;background:#15111a;box-shadow:0 22px 44px rgba(42,22,58,.16)}
.destination-grid figure img{width:100%;height:100%;object-fit:contain;object-position:center;border-radius:25px;background:#09080c}
.destination-grid span{font-size:28px}

@media(max-width:900px){
  .journey-section{display:block;min-height:0;padding-top:65px;padding-bottom:65px}
  .journey-path{height:auto;margin-top:45px;grid-template-columns:minmax(210px,.75fr) 1fr}
  .journey-path:before{left:43%}
  .use-cases{grid-template-columns:repeat(3,1fr);gap:26px 14px}
  .use-cases b{grid-column:1/-1}
  .destination-grid:after{display:none}
}

@media(max-width:600px){
  .audience-icon{width:52px;height:52px}
  .audience-list article{grid-template-columns:62px 1fr;padding:22px 4px}
  .journey-section{min-height:0;padding-top:58px;padding-bottom:58px}
  .journey-title h2{font-size:43px;line-height:.98}
  .journey-path{position:relative;height:auto;margin:38px 0 0;padding:24px 20px;display:block;border-radius:28px;overflow:visible}
  .journey-path:before{display:none}
  .geo-phone{width:220px}
  .geo-phone img{border-width:6px;border-radius:29px}
  .journey-steps{margin-top:34px;gap:24px}
  .journey-path .journey-steps article,.journey-path .journey-steps article:nth-of-type(n){position:relative;inset:auto;width:auto;min-height:70px;padding:0;grid-template-columns:58px 1fr;gap:14px}
  .journey-path .journey-steps article>span{width:54px;height:54px;font-size:21px}
  .journey-path .journey-steps article:not(:last-child):after{left:27px;top:56px;height:42px}
  .journey-path .journey-steps h3{font-size:23px;margin-top:0}
  .journey-path .journey-steps p{font-size:12.5px}
  .case-gallery figure{margin-bottom:40px}
  .case-rock .rock-proof-card{max-width:78%}
  .scor-logo{height:115px}
  .scor-logo img{width:610px}
  .crexga{min-height:0;padding-top:54px;padding-bottom:42px;gap:34px}
  .use-cases{grid-template-columns:1fr 1fr;gap:26px 10px;padding-bottom:0}
  .use-cases span{font-size:12px}
  .company{padding-top:60px}
  .company-head h2{font-size:50px}
  .company-head p{font-size:16px}
  .destination-grid{grid-template-columns:1fr;gap:52px}
  .destination-grid article{padding-top:35px}
  .country-map{width:58px;height:58px}
  .destination-grid figure{width:225px;margin-top:40px}
}

/* Focused alignment, partner lockup and hand-drawn treatment */
.technology{display:block;min-height:0;padding-top:72px;padding-bottom:76px}
.tech-heading{text-align:center}
.tech-heading h2{font-size:clamp(48px,4.4vw,68px);margin:20px auto 0}
.tech-heading h2:after{margin:24px auto 0}
.tech-list{max-width:1500px;width:100%;margin:58px auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
.tech-list article{min-width:0;min-height:292px;height:auto;padding:14px clamp(24px,2.3vw,42px);display:flex;flex-direction:column;justify-content:flex-start}
.tech-list h3{min-height:52px;font-size:clamp(20px,1.55vw,26px)}
.tech-list p{max-width:250px}
.use-cases{gap:16px;border-top:0}
.use-cases>b{align-self:center}
.use-cases span{position:relative;min-height:118px;padding:17px 10px 14px;display:grid;grid-template-rows:42px auto;align-content:center;justify-items:center;background:#fcf8f1;border:1px solid #dbcdf9;border-radius:48% 52% 46% 54% / 56% 46% 54% 44%;box-shadow:5px 7px 0 #eee7fb;font-family:var(--serif);font-size:14px}
.use-cases span:nth-of-type(odd){transform:rotate(-1.1deg)}
.use-cases span:nth-of-type(even){transform:rotate(.9deg);border-radius:54% 46% 52% 48% / 44% 56% 46% 54%}
.use-cases span img{width:32px;height:32px}
.story-screen.rock-proof-card .scor-lockup{display:block;width:92%;height:auto;max-height:125px;object-fit:contain;background:transparent;padding:0;margin:0 auto 26px}
.story-screen.rock-proof-card p{margin-bottom:24px}
.rock-partners{width:100%;margin-top:38px;padding-top:20px;border-top:1px solid rgba(255,255,255,.24);display:flex;align-items:center;justify-content:space-between;gap:22px}
.story-screen.rock-proof-card .rock-partners img{display:block;width:46%;height:52px;object-fit:contain;background:transparent;padding:0;margin:0}

@media(max-width:900px){
  .tech-list{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px}
  .tech-list article{min-height:255px}
  .use-cases{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:600px){
  .tech-heading h2 br{display:block}
  .tech-heading h2{font-size:48px;line-height:.98}
  .tech-list{grid-template-columns:1fr;margin-top:42px}
  .tech-list article{min-height:0;height:auto;padding:26px 4px;display:grid;grid-template-columns:72px 1fr;column-gap:15px;justify-content:initial}
  .tech-list h3{min-height:0;margin:4px 0 8px}
  .tech-list p{grid-column:2;max-width:none}
  .use-cases{grid-template-columns:1fr 1fr;gap:20px 12px}
  .use-cases span{min-height:112px;padding:14px 8px;font-size:13px}
  .story-screen.rock-proof-card{padding:30px 24px}
  .story-screen.rock-proof-card .scor-lockup{max-height:105px;margin-bottom:18px}
  .story-screen.rock-proof-card p{font-size:11px;margin-bottom:18px}
  .story-screen.rock-proof-card strong{font-size:43px}
  .rock-partners{margin-top:25px;padding-top:15px}
  .story-screen.rock-proof-card .rock-partners img{height:42px}
  footer .footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}
  footer .footer-links a{display:block;padding:4px 6px;font-size:17px;line-height:1.2}
}

/* Story-format portfolio frames: artwork determines the frame */
.case-gallery{max-width:1180px;gap:clamp(34px,4vw,72px)}
.case-gallery figure{min-width:0}
.story-screen{width:min(100%,360px);aspect-ratio:9/16;margin:0 auto;overflow:hidden;border:1px solid #d8c7aa;border-radius:22px;background:#0c0910;box-shadow:0 24px 50px rgba(27,13,45,.14)}
.story-screen>img:not(.rir-logo){display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#0c0910}
.story-screen.rock-proof-card{max-width:none;padding:42px 30px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;text-align:center;background:radial-gradient(circle at 50% 24%,#311053 0,#19062f 42%,#11031f 100%);color:#fff}
.story-screen.rock-proof-card .rir-logo{display:block;width:92%;height:auto;max-height:145px;object-fit:contain;background:transparent;padding:0;margin:0 auto 34px}
.story-screen.rock-proof-card p{margin:0 0 30px;color:#d8cce6;font-size:13px;line-height:1.55;letter-spacing:.15em;text-transform:uppercase}
.story-screen.rock-proof-card strong{font:600 clamp(44px,3.5vw,62px)/.98 var(--serif);letter-spacing:-.035em}
.case-gallery figcaption{width:min(100%,360px);margin-left:auto;margin-right:auto}
.case-number{left:50%;transform:translateX(-180px)}

@media(max-width:600px){
  .case-gallery figure{width:min(86%,320px)}
  .story-screen{width:100%;border-radius:18px}
  .story-screen.rock-proof-card{padding:34px 24px}
  .story-screen.rock-proof-card .rir-logo{width:90%;margin-bottom:28px}
  .story-screen.rock-proof-card strong{font-size:47px}
  .case-number{left:0;transform:none}
}
.asset-credit{display:block;margin-top:10px;color:#817388;font-size:9px;letter-spacing:.02em}

/* Final composition pass: three complete product screens */
.technology{grid-template-columns:minmax(270px,.72fr) minmax(0,3.28fr)}
.tech-list{width:100%;align-self:stretch;align-items:center}
.tech-list article{height:100%;display:flex;flex-direction:column;justify-content:center}
.geo-phone{width:min(100%,300px)}
.geo-phone img{aspect-ratio:9/16;object-fit:contain;object-position:center;background:#09080c}
.cases{padding-bottom:42px}
.case-gallery{max-width:1500px;margin:0 auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,3.4vw,62px)}
.case-gallery .case-tall>img,.rock-product{display:block;width:100%;aspect-ratio:9/16;border:8px solid #17131d;border-radius:36px;box-shadow:0 22px 40px rgba(27,13,45,.16);overflow:hidden;background:#16072e}
.case-gallery .case-tall>img{height:auto;object-fit:contain;object-position:center}
.rock-product{padding:22px;display:grid;place-items:center}
.rock-product img{width:100%;height:100%;object-fit:contain;object-position:center}
.crexga{padding-top:42px}

@media(max-width:900px){
  .technology{display:block}
  .tech-list{align-items:stretch}
  .case-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
  .case-gallery .case-tall>img,.rock-product{border-width:6px;border-radius:26px}
}

@media(max-width:600px){
  .geo-phone{width:205px}
  .cases{padding-bottom:24px}
  .case-gallery{display:block}
  .case-gallery figure{width:min(78%,300px);margin:0 auto 30px}
  .case-gallery .case-tall>img,.rock-product{max-width:none;width:100%;margin:0}
  .rock-product{padding:16px}
  .crexga{padding-top:22px}
}

/* Definitive overrides for the technology grid and Rock in Rio lockup */
.technology{display:block;min-height:0;padding-top:72px;padding-bottom:76px}
.tech-list{max-width:1500px;width:100%;margin:58px auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
.tech-list article{min-width:0;min-height:292px;height:auto;padding:14px clamp(24px,2.3vw,42px);display:flex;flex-direction:column;justify-content:flex-start}
.story-screen.rock-proof-card .scor-lockup{display:block;width:92%;height:125px;max-height:125px;object-fit:contain;object-position:center;background:transparent;padding:0;margin:0 auto 22px}
.story-screen.rock-proof-card p{margin:0 0 24px}
.story-screen.rock-proof-card .rock-partners img{display:block;width:46%;height:52px;object-fit:contain;object-position:center;background:transparent;padding:0;margin:0}

@media(max-width:900px){
  .tech-list{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px}
  .tech-list article{min-height:255px}
}

@media(max-width:600px){
  .tech-heading h2 br{display:block}
  .tech-list{grid-template-columns:1fr;margin-top:42px}
  .tech-list article{min-height:0;height:auto;padding:26px 4px;display:grid;grid-template-columns:72px 1fr;column-gap:15px;justify-content:initial}
  .tech-list p{grid-column:2}
  .story-screen.rock-proof-card .scor-lockup{height:100px;max-height:100px;margin-bottom:16px}
  .story-screen.rock-proof-card p{margin-bottom:16px}
  .story-screen.rock-proof-card .rock-partners img{height:40px}
}
