/* Website-only visual layer. Print profile styles remain in style.css. */
:root{--gold:#e2ac79;--ease:cubic-bezier(.2,.75,.25,1)}
body{background:#fcfbf8}
::selection{background:#ddb082;color:#10272f}
.reading-progress{position:fixed;top:0;inset-inline:0;z-index:80;height:3px;pointer-events:none}
.reading-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#a3623b,#edc39b);transform:scaleX(0);transform-origin:left}
[dir=rtl] .reading-progress span{transform-origin:right}
.topbar{background:#0a2026}
.header{background:rgba(252,251,248,.96);backdrop-filter:blur(18px);transition:box-shadow .4s,background .4s}
.header.is-scrolled{box-shadow:0 8px 35px #10272f12;background:rgba(252,251,248,.94)}
.brand-symbol{transition:transform .5s var(--ease)}
.brand:hover .brand-symbol{transform:rotate(-5deg)}
.button{position:relative;overflow:hidden;isolation:isolate;border-radius:3px;min-height:52px;padding:17px 25px;transition:background .3s,box-shadow .3s,transform .4s var(--ease)}
.button:before{content:'';position:absolute;inset:-100% auto -100% -70%;width:35%;background:linear-gradient(90deg,transparent,#ffffff24,transparent);transform:rotate(22deg);pointer-events:none}
.button:hover:before{animation:button-sheen .75s var(--ease)}
.button:hover{box-shadow:0 12px 26px #0b22282b;transform:translateY(-4px)}
.button .arrow{transition:transform .4s var(--ease)}
.button:hover .arrow{transform:translate(3px,-3px)}
[dir=rtl] .button:hover .arrow{transform:scaleX(-1) translate(3px,-3px)}
.button.copper{background:#a9633b;border-color:#d0966e;color:#fff}
.button.copper:hover{background:#a25c36}
.button.small{min-height:45px}
.underlined-link{position:relative;border-color:#c8a58a;transition:gap .35s,color .3s}
.underlined-link:hover{gap:65px}
.hero-orbit{position:absolute;inset-inline-end:10%;top:3%;width:480px;height:480px;opacity:.2;pointer-events:none}
.hero-orbit>span{position:absolute;inset:0;border:1px solid #ebbc8b;border-radius:50%}
.hero-orbit>span:nth-child(2){inset:50px;border-style:dashed;animation:orbit-turn 80s linear infinite}
.hero-orbit i{position:absolute;top:49%;width:100%;height:1px;background:#edc9a660;transform:rotate(-35deg)}
.stats{padding:0;position:relative;z-index:6;background:#eeeae2;border-bottom:1px solid #dcd7cc}
.stats .stats-grid{padding:42px 0}
.stats-grid strong{font-variant-numeric:tabular-nums;font-size:50px;letter-spacing:-2.5px}
.stats-grid>div{position:relative}
.stats .stats-grid>div:after{content:'';position:absolute;bottom:-43px;inset-inline:0;height:2px;background:var(--copper);transform:scaleX(0);transition:transform .5s var(--ease)}
.stats .stats-grid>div:hover:after{transform:scaleX(1)}
.section{padding-block:115px}
.eyebrow.dark{display:flex;align-items:center;gap:12px;color:#95643f}
.eyebrow.dark:before{content:'';width:20px;height:1px;background:currentColor;flex:none}
.intro-visual{padding:0 20px 32px 0}
.intro-visual:before{content:'';position:absolute;inset:24px 0 0 24px;border:1px solid #cba580;z-index:-1}
.intro-visual>img{height:490px;filter:saturate(.8);border-radius:2px;transition:filter .8s}
.intro-visual:hover>img{filter:saturate(1.12)}
.image-label{inset-inline-end:-13px;background:#17333a;box-shadow:0 15px 30px #0a202620;border-inline-start:3px solid var(--gold)}
.intro-copy h2{font-size:clamp(35px,3.2vw,50px)}
.expertise{position:relative;isolation:isolate;background:#10272f;color:white;overflow:hidden}
.expertise:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 90% 10%,#28535a66,transparent 60%),repeating-linear-gradient(90deg,transparent,transparent calc(25% - 1px),#ffffff06 25%)}
.expertise .eyebrow.dark{color:#ddb18a}
.expertise h2 em{color:#edbd94}
.expertise .section-heading p{color:#b2c5c9}
.expertise .underlined-link{color:#fff}
.services-grid{gap:25px}
.service-card{height:385px;border:1px solid #ffffff22;border-radius:4px;transition:box-shadow .5s,border-color .5s;transform-style:preserve-3d}
.service-card>img{opacity:.87;transition:transform 1s var(--ease),filter .8s;filter:saturate(.75)}
.service-card:after{background:linear-gradient(0deg,#071c26f7 0%,#0b253440 65%,#0b253410)}
.service-card:hover{border-color:#e2ac7990;box-shadow:0 20px 55px #0003}
.service-card:hover>img{filter:saturate(1.15);transform:scale(1.08)}
.service-card-content{inset:27px}
.card-number{width:38px;height:38px;border:1px solid #ffffff55;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:11px}
.service-card h3{font-size:27px;max-width:85%;line-height:1.2;margin-bottom:8px}
.service-card .eyebrow{color:#f1c5a2;letter-spacing:1.4px}
.circle-arrow{transition:background .35s,color .35s,transform .5s var(--ease),border-color .35s}
.service-card:hover .circle-arrow{background:var(--gold);border-color:var(--gold);color:#10272f;transform:rotate(45deg)}
.project-card{transition:transform .45s var(--ease)}
.project-card:hover{transform:translateY(-7px)}
.project-image{height:320px;border-radius:4px;box-shadow:0 5px 20px #142f3608}
.project-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#10272f44,transparent 70%);pointer-events:none}
.project-image .circle-arrow{z-index:1;width:46px;height:46px}
.project-card:hover .circle-arrow{background:var(--gold);transform:rotate(45deg)}
.project-year{border-radius:2px;z-index:1;font-weight:600;box-shadow:0 5px 20px #0001}
.project-info{padding:26px 0 20px;border-bottom:1px solid #deded5}
.project-info h3{font-size:25px;transition:color .3s}
.project-card:hover h3{color:#a3623b}
.project-category{letter-spacing:1.4px}
.responsibility-banner{padding:120px 0;overflow:hidden}
.responsibility-banner:before{background:linear-gradient(90deg,#0c232af2 20%,#173e49a1)}
.responsibility-banner>img{transform:scale(1.07);filter:saturate(.65)}
.responsibility-banner .wrap:after{content:'+';position:absolute;inset-inline-end:12%;top:20%;font-size:250px;line-height:1;font-weight:100;color:#ffffff15;pointer-events:none}
.partner-wordmarks{padding:30px 0;border-color:#d5d6cf}
.partner-wordmarks a{transition:background .35s,transform .4s var(--ease)}
.partner-wordmarks a:hover{background:#efe9df;transform:translateY(-5px)}
.partner-wordmarks strong{font-size:26px}
.partner-wordmarks span{display:block;margin-top:9px}
.cta{position:relative;overflow:hidden;background:#a3623b;padding:82px 0;isolation:isolate}
.cta:before,.cta:after{content:'';position:absolute;border:1px solid #ffffff20;border-radius:50%;width:550px;height:550px;inset-inline-end:-90px;top:-180px;z-index:-1;pointer-events:none}
.cta:after{width:430px;height:430px;inset-inline-end:-30px;top:-120px;border-style:dashed;animation:orbit-turn 80s linear infinite}
.cta h2{font-size:clamp(36px,3.6vw,55px);letter-spacing:-1.7px}
footer{background:#0c2229;position:relative;overflow:hidden}
.footer-grid a:not(.brand){transition:color .25s,translate .25s}
.footer-grid a:not(.brand):hover{color:#edbd94!important;translate:4px 0}
[dir=rtl] .footer-grid a:not(.brand):hover{translate:-4px 0}
.page-heading{padding:40px 0 80px;background:radial-gradient(ellipse at 85% 30%,#285059,#10272f 65%)}
.page-heading:after{color:#ffffff04;animation:heading-drift 20s ease-in-out infinite alternate}
.page-heading:before{content:'';position:absolute;width:290px;height:290px;border:1px solid #d6b08725;border-radius:50%;inset-inline-end:18%;top:-80px;pointer-events:none}
.page-heading h1{max-width:1040px}
.feature-image,.project-cover,.partner-row>img{border-radius:4px}
.project-facts{border-top:3px solid var(--copper);box-shadow:0 15px 45px #142f3607}
.partner-row{gap:80px}
.partner-row img{transition:filter .6s;filter:saturate(.75)}
.partner-row:hover img{filter:saturate(1.1)}
.partner-row details{background:#f2f0e9;padding:18px 22px;border:0;border-inline-start:2px solid var(--copper)}
.partner-row details[open]{box-shadow:0 10px 25px #142f3608}
.scope-list>div{transition:padding .4s,background .4s}
.scope-list>div:hover{padding-inline:18px;background:#eae6dd}
.process-grid article{position:relative;transition:translate .4s}
.process-grid article:hover{translate:0 -7px}
.step-number{font-size:48px}
.values-grid article{background:#fcfbf8;padding:35px;border-top:2px solid #c59e7d;box-shadow:0 5px 30px #142f3604;transition:box-shadow .4s,translate .4s}
.values-grid article:hover{translate:0 -6px;box-shadow:0 18px 45px #142f3610}
.values-grid{gap:30px}
.form-panel{background:#fff;border:1px solid #e4e3da;border-top:3px solid var(--copper);box-shadow:0 18px 70px #10272f0a;padding:42px}
input:not([type=checkbox]),select,textarea{background:#faf9f5;border-color:#dedfd6;transition:border-color .25s,box-shadow .25s,background .25s}
input:focus,select:focus,textarea:focus{background:#fff;border-color:#ad7752;box-shadow:0 0 0 3px #bb754b13;outline:none}
label:focus-within{color:#945934}
.filters{gap:12px;padding-bottom:20px;border-color:#dfe0d7}
.filters button{border:1px solid #d8dcd2;padding:11px 20px;border-radius:2px;transition:background .3s,color .3s,border-color .3s}
.filters button.active{background:#153039;color:#fff;border-color:#153039}
.filters button:hover:not(.active){background:#eee9df}
.motion-controls{position:fixed;bottom:22px;inset-inline-end:22px;display:flex;align-items:center;gap:8px;z-index:45}
.back-top{border:1px solid #ffffff30;background:#153039ed;backdrop-filter:blur(12px);color:white;box-shadow:0 4px 20px #0002;min-height:42px}
.back-top{display:grid;place-items:center;width:42px;border-radius:50%;font-size:20px;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .3s,transform .3s,visibility .3s}
.has-scrolled .back-top{opacity:1;visibility:visible;transform:none}
.back-top:hover{background:#a3623b}
.motion-enabled .reveal-pending{opacity:0}
.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}
.motion-paused *{transition:none!important}
.motion-paused .reveal-pending{opacity:1}
.motion-paused{scroll-behavior:auto}
@keyframes orbit-turn{to{transform:rotate(360deg)}}
@keyframes button-sheen{from{left:-70%}to{left:140%}}
@keyframes heading-drift{from{transform:translateY(0)}to{transform:translateY(20px)}}
@media(max-width:1200px){.service-card{height:345px}.service-card h3{font-size:24px}}
@media(max-width:1050px){.hero-orbit{inset-inline-end:-100px}.section{padding-block:85px}.project-image{height:270px}.partner-row{gap:40px}}
@media(max-width:900px){.intro-visual>img{height:420px}.stats-grid strong{font-size:41px}.service-card-content{inset:22px}.project-info h3{font-size:22px}.form-panel{padding:32px}}
@media(max-width:600px){.hero-orbit{width:330px;height:330px;inset-inline-end:-100px;top:10%}.stats .stats-grid{padding-block:32px}.stats-grid strong{font-size:39px}.stats .stats-grid>div:after{display:none}.section{padding-block:68px}.intro-visual{padding:0 12px 22px 0}.intro-visual>img{height:355px}.image-label{inset-inline-end:0;padding:20px 25px}.intro-copy h2{font-size:36px}.services-grid{grid-template-columns:1fr;gap:20px}.service-card{height:350px}.service-card-content{inset:25px}.service-card h3{font-size:28px;max-width:80%;margin-bottom:8px}.service-card .circle-arrow{inset-inline-start:auto;inset-inline-end:0;bottom:8px;width:42px;height:42px}.service-card .eyebrow{font-size:9px}.project-image{height:300px}.project-info h3{font-size:24px}.responsibility-banner{padding:85px 0}.responsibility-banner .wrap:after{font-size:150px;inset-inline-end:0;top:5%;opacity:.5}.cta{padding:56px 0}.cta h2{font-size:35px}.partner-row{gap:30px}.form-panel{padding:27px 20px}.values-grid article{padding:27px}.filters{gap:8px}.filters button{font-size:11px;padding:10px 13px}.motion-controls{bottom:15px;inset-inline-end:13px}.back-top{width:38px;min-height:38px}.page-heading{padding-bottom:55px}.footer-bottom{padding-bottom:75px}}
[dir=rtl] .cta h2{letter-spacing:0}
[dir=rtl] .intro-visual{padding:0 0 32px 20px}
[dir=rtl] .intro-visual:before{inset:24px 24px 0 0}
@media(max-width:600px){[dir=rtl] .service-card h3{font-size:25px}[dir=rtl] .intro-visual{padding:0 0 22px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-enabled .reveal-pending{opacity:1}}
@media print{.reading-progress,.motion-controls,.hero-orbit{display:none!important}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-pending{opacity:1!important;transform:none!important}body{background:white}.profile-sheet{box-shadow:none}.profile-sheet .eyebrow.dark{display:block}.profile-sheet .eyebrow.dark:before{display:none}}