/* Method: an integrated orbit beside a connected sequence of deliverables. */
.method-section{padding:115px 0;background:radial-gradient(ellipse at 10% 25%,#60259812,transparent 50%),#0b0a10;position:relative}
.method-section .process-layout{grid-template-columns:.95fr 1.15fr;gap:85px;align-items:start}
.method-section .process-heading{top:125px}.method-section .process-heading h2{font-size:clamp(38px,4.1vw,55px);line-height:1.12;letter-spacing:-2.5px;margin:24px 0}.method-section .process-heading>p{max-width:390px;font-size:14px;line-height:1.85;margin:0 0 27px}.method-section .process-heading>.button{font-size:12px;min-height:48px}
.method-engine{height:245px;width:310px;max-width:100%;position:relative;margin-top:22px;isolation:isolate;overflow:hidden}
.engine-grid{position:absolute;inset:0;background-image:linear-gradient(#a478cb0a 1px,transparent 1px),linear-gradient(90deg,#a478cb0a 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(ellipse,#000,transparent 72%)}
.engine-orbit{position:absolute;width:180px;height:180px;left:65px;top:8px;border:1px solid #b080d740;border-radius:50%;transform:rotateX(22deg) rotateZ(-30deg)}.orbit-inner{width:115px;height:115px;left:97px;top:40px;border-style:dashed;border-color:#bd92dc25}
.engine-sweep{position:absolute;left:65px;top:8px;width:180px;height:180px;border-radius:50%;background:conic-gradient(from 0deg,transparent 70%,#a56cda16 98%,#c799ec88);animation:engine-revolve 16s linear infinite;mask-image:radial-gradient(circle,transparent 52%,#000 53%)}
.engine-core{position:absolute;left:120px;top:65px;width:72px;height:72px;display:grid;place-items:center;border:1px solid #c493ea3b;border-radius:19px;background:radial-gradient(circle at 20% 0,#854bc744,#1a1225);box-shadow:0 0 40px #9d45e321,inset 0 1px 0 #ffffff12;transform:rotate(-8deg)}.engine-core img{width:44px;height:auto}
.engine-node{position:absolute;display:grid;place-items:center;width:28px;height:28px;border:1px solid #a277c151;background:#17101f;border-radius:50%;font:10px var(--font);color:#c3a1df;box-shadow:0 0 16px #9246ce19}.node-one{left:140px;top:0}.node-two{left:233px;top:91px}.node-three{left:140px;top:173px}.node-four{left:51px;top:91px}
.engine-caption{position:absolute;bottom:0;left:0;width:100%;font-size:7px;letter-spacing:2px;text-align:center;line-height:1.8;color:#807089}.engine-caption b{font-weight:500;color:#bf96dc}
.method-section .process-steps{position:relative;padding-left:24px}.method-section .process-steps:before{content:'';position:absolute;top:42px;bottom:48px;left:0;width:1px;background:linear-gradient(#b981e666,#b981e622 80%,transparent)}
.method-section .method-step{display:grid;grid-template-columns:58px 1fr;gap:21px;padding:28px;margin-bottom:16px;border:1px solid #b99acf20;border-radius:17px;background:radial-gradient(ellipse at 0 0,#9d61cf0e,transparent 70%),linear-gradient(130deg,#1c162280,#100e15);box-shadow:inset 0 1px 0 #ffffff05;transition:border-color .3s,background .3s,box-shadow .3s}
.method-section .method-step:hover{border-color:#ae78d751;box-shadow:0 10px 40px #0003,inset 0 1px 0 #d8b2f515}
.step-connector{position:absolute;left:-29px;top:39px;width:9px;height:9px;border:2px solid #c896f4;border-radius:50%;background:#160f20;box-shadow:0 0 12px #be86e858}.step-connector:after{content:'';position:absolute;width:19px;height:1px;top:2px;left:7px;background:#b582d849}
.method-section .step-number{display:block;min-width:0;font-size:44px;letter-spacing:-3px;color:#d2a2f2;line-height:1;font-weight:400}.step-index{padding-top:4px}.step-mini-line{display:block;height:1px;width:27px;background:#a269cc5e;margin:15px 0 0 4px}
.method-section .step-kicker{font-size:7px;letter-spacing:1.7px;color:#aa86c4}.method-section .step h3{font-size:25px;letter-spacing:-.7px;margin:8px 0 12px}.method-section .step p{font-size:13px;line-height:1.8;color:#a499ad;max-width:380px}.step-delivery{display:flex;align-items:center;gap:8px;margin-top:19px;padding-top:13px;border-top:1px solid #b899ce13;font-size:10px;color:#baa1cc}.step-delivery>span{color:#c18de9;font-size:16px}
.method-cycle{display:flex;align-items:center;justify-content:center;gap:10px;padding-top:7px;color:#9784a6;font-size:10px}.method-cycle>span{font-size:22px;color:#b587d7}
@keyframes engine-revolve{to{transform:rotate(360deg)}}
/* Full-width campaign screenshots on phones and small tablets. */
@media(max-width:800px){.case-masonry{display:flex;flex-direction:column;gap:16px}.case-column,.case-column:last-child{display:flex;flex-direction:column;width:100%;gap:16px}.case-gallery{--preview-height:620px;max-width:540px;margin-inline:auto}.case-fog{height:210px}.case-photo{border-radius:10px}}
/* Footer: a single glass panel with brand, navigation, services and contact. */
.site-footer{padding:70px 0 25px;border-top:0;background:radial-gradient(ellipse at 8% 5%,#6d32a324,transparent 40%),radial-gradient(ellipse at 100% 100%,#7c57951a,transparent 38%),#09090d}
.site-footer>.container{width:min(1320px,calc(100% - 64px))}.footer-panel{display:grid;grid-template-columns:1.8fr .85fr 1.05fr 1.1fr;gap:38px;padding:42px 36px;border:1px solid #b395cc25;border-radius:28px;background:radial-gradient(ellipse at 0 0,#7432c44d,transparent 43%),linear-gradient(115deg,#100c1af2,#09090ce8 75%);box-shadow:0 24px 70px #0002,inset 0 1px 0 #ffffff06;align-items:start}
.footer-brand-block .brand{font-size:30px;width:max-content}.footer-brand-block .brand img{width:39px;height:36px}.footer-brand-block .brand-small{font-size:8px;letter-spacing:5px}.footer-brand-block>p{color:#c1b6cd;font-size:13px;line-height:1.8;max-width:365px;margin:23px 0 24px}
.footer-social-icons{display:flex;gap:11px}.footer-social-icons a{width:36px;height:36px;display:grid;place-items:center;border:1px solid #bda4d529;border-radius:50%;background:#ffffff04;color:#b8aec3;transition:color .25s,border-color .25s,transform .25s}.footer-social-icons a:hover{color:#e3c1ff;border-color:#b479e8;transform:translateY(-3px)}.footer-social-icons svg{width:17px;height:17px}
.footer-column{display:flex;flex-direction:column;gap:17px;min-width:0}.footer-column h2{margin:0 0 6px;font:500 10px var(--body);letter-spacing:2.3px;text-transform:uppercase;color:#b475f3;line-height:1.8}.footer-column>a{font-size:12px;line-height:1.6;color:#d0c6d9;transition:color .2s}.footer-column>a:hover{color:#c28bee}
.footer-contact-column{gap:18px}.footer-contact-row{display:flex;align-items:center;gap:11px;font-size:12px;color:#d0c6d9}.footer-contact-icon{flex-shrink:0;display:grid;place-items:center;width:33px;height:33px;border-radius:50%;border:1px solid #a589c529;background:#ffffff04;color:#ad76e2}.footer-contact-icon svg{width:14px;height:14px}.footer-contact-row>span:last-child{min-width:0;overflow-wrap:anywhere}.footer-contact-row small{display:block;font-size:8px;font-weight:500;letter-spacing:1.6px;text-transform:uppercase;color:#887991;margin-bottom:3px}.footer-column .footer-budget{min-height:38px;padding:7px 13px;width:max-content;max-width:100%;font-size:11px;gap:9px;color:#c092f0;border-color:#b16fe640;background:#a06ddb09;margin-top:3px}
.footer-base{display:flex;justify-content:space-between;gap:25px;padding-top:26px;font-size:10px;color:#7d7486;line-height:1.6}.service-card h3[id]{scroll-margin-top:145px}
@media(max-width:1100px){.method-section .process-layout{gap:45px;grid-template-columns:.95fr 1.2fr}.method-section .method-step{padding:24px 20px;gap:14px;grid-template-columns:48px 1fr}.method-section .step h3{font-size:23px}.method-section .process-heading h2{font-size:43px}.footer-panel{gap:24px;padding:34px 26px;grid-template-columns:1.4fr .8fr 1fr 1fr}.footer-column>a,.footer-contact-row{font-size:11px}.footer-brand-block>p{font-size:12px}.footer-column .footer-budget{font-size:10px}}
@media(max-width:800px){.method-section{padding:75px 0}.method-section .process-layout{grid-template-columns:1fr;gap:35px}.method-section .process-heading{position:relative;top:0;max-width:540px}.method-section .process-heading h2{font-size:43px}.method-engine{display:none}.method-section .process-heading>p{max-width:400px}.method-section .process-steps{padding-left:21px}.step-connector{left:-26px}.method-section .method-step{grid-template-columns:55px 1fr;padding:25px;gap:20px}.method-section .step p{max-width:none}.site-footer{padding-top:40px}.site-footer>.container{width:calc(100% - 40px)}.footer-panel{grid-template-columns:1fr 1fr;gap:35px;padding:30px;border-radius:24px}.footer-brand-block{grid-column:1/-1}.footer-brand-block>p{max-width:470px;font-size:13px}.footer-column>a,.footer-contact-row{font-size:12px}.footer-contact-column{grid-column:1/-1;max-width:360px}.footer-base{font-size:9px}}
@media(max-width:600px){.method-engine{display:none}.method-section .process-heading h2{font-size:40px;letter-spacing:-1.8px}.method-section .process-heading h2 br:nth-child(3){display:none}.method-section .process-heading>p{font-size:14px}.method-section .method-step{grid-template-columns:42px 1fr;gap:14px;padding:23px 18px;border-radius:14px}.method-section .step-number{font-size:35px;letter-spacing:-2px}.method-section .step h3{font-size:22px}.method-section .step-kicker{font-size:6px;letter-spacing:1.2px}.method-section .step p{font-size:12px}.step-delivery{font-size:9px;margin-top:15px}.method-cycle{font-size:9px}.footer-panel{padding:27px 22px;gap:32px 20px}.footer-column h2{font-size:9px;letter-spacing:1.8px}.footer-column>a{font-size:11px}.footer-brand-block .brand{font-size:29px}.footer-base{flex-direction:column;gap:8px}.site-footer{padding-bottom:35px}}
@media(prefers-reduced-motion:reduce){.engine-sweep{animation:none}}
